%% Zaklady programovani v Matlabu
%% Vetveni

s=input('Zadejte libovolne cislo: ');   % cislo musite zadat v prikazovem radku :-(
if s<0
    disp('Zadali jste zaporne cislo.');
    % pripadne dalsi prikazy
elseif s>0                              % nepovinna vetev
    disp('Zadali jste kladne cislo.');
    % pripadne dalsi prikazy
else                                    % taky nepovinna vetev
    disp('Vami zadana hodnota je bud 0 nebo to neni cislo!');
    % pripadne dalsi prikazy
end                                     % konec prikazu if

%
%% Cykus for

s=input('Vypocet faktorialu, zadejte libovolne nezaporne cele cislo: ');    % cislo opet musite zadat v prikazovem radku
f=1;
for k=1:s
    f=f*k;
end
disp(['Faktorial cisla ',num2str(s),' je ',num2str(f),'.'])
f=prod(1:s)         % takhle je to jednodussi, funguje to i pro 0

%
%% Cyklus while
% Priklad: nalezeni nejmensiho cisla x, pro ktere je v ramci pocitacove presnosti 1+x>1

x=1;
n=1;    % pocet pruchodu cyklem
while 1+x/2>1
    x=x/2;
    n=n+1;
end
x       % hodnota nalezeneho cisla
n
eps     % porovnani s matlabovskou konstantou