abc Matlab - elektronski priručnik
V dio Programiranje u Matlabu - 5.1. Kontrola toka programa
5.1.1. Uslovna kontrola – if, else, switch
Uslovne naredbe nam omogućavaju da izaberemo u vremenu izvršavanja koji blok koda će se izvršiti. Najjednostavnija uslovna naredba je if naredba. Na primjer:
% Generisi slucajni broj
a = randi(100, 1);
% Ako je paran, podijeli ga sa 2
if rem(a, 2) == 0
disp('a je paran')
b = a/2;
end
Naredba if može uključiti alternativne izbore, pomoću opcionih ključnih riječi elseif ili else. Na primjer:
a = randi(100, 1);
if a < 30
disp('mali')
elseif a < 80
disp('srednji')
else
disp('veliki')
end
Alternativno, ako želimo da testiramo jednakost nasuprot nekog skupa poznatih vrijednosti, koristimo naredbu switch. Na primjer:
[dayNum, dayString] = weekday(date, 'long', 'en_US');
switch dayString
case 'Ponedjeljak'
disp('Pocetak radne nedjelje')
case 'Utorak'
disp('Dan 2')
case 'Srijeda'
disp('Dan 3')
case 'Cetvrtak'
disp('Dan 4')
case 'Petak'
disp('Posljednji da radne nedjelje')
otherwise
disp('Vikend!')
end
Za if i switch, Matlab izvršava kod odgovarajući na prvi istinit uslov, a onda izlazi iz bloka koda. Svaka uslovna naredba zahtijeva ključnu riječ end.
Uopšte, kada imamo mnogo mogućih diskretnih, poznatih vrijednosti, switch naredba je lakša za čitanje nego if naredba. Međutim, nije moguće testirati nejednakost između switch i case vrijednosti. Na primjer, ne možemo implementirati ovaj tip uslova sa switch:
yourNumber = input('Unesi broj: ');
if yourNumber < 0
disp('Negativan')
elseif yourNumber > 0
disp('Pozitivan')
else
disp('Nula')
end
Štampanje Matlab grafike < Index > Uslovna kontrola – if, else, switch - Poređenja nizova u uslovnim naredbama
|