2 PODMÍNĚNÝ PŘÍKAZ VĚTVENÍ if podmínka příkazy end Příklad 1 - chtěli bychom vypsat gratulaci jen v tom případě, kdy žák bude mít jedničku. Vyzkoušíme si to nejprve pro trojku: >> znamka=3; >> if znamka==1 zprava='Gratuluji! Lepsi to byt nemohlo!' end Příklad 2 - v případě, že proměnná a je menší než pět, vypíšeme zprávu, jinak se nic neprovede: if a < 5 disp('cislo 'a' je mensi nez 5') end
3 if podmínka1 příkazy1 else příkazy2 end Činnost příkazu if-else: nejprve se testuje podmínka - je-li pravdivá, provedou se příkazy1, je-li nepravdivá, provedou se příkazy2. Vždycky se tedy provede jedna skupina příkazů. Příklad 3 - v případě, že proměnná a je menší než pět, vypíšeme zprávu "a je mensi", jinak se vypise "a je vetsi nebo rovno": if a < 5 disp('cislo 'a' je mensi nez 5') else disp('cislo 'a' je vetsi nebo rovno 5') end Z příkladu 3 je vidět, že někdy by bylo vhodné v případě neplatnosti podmínky testovat také jiné možnosti. Ke splnění tohoto cíle stačí vnořit další příkaz if do větve else, ale existuje pohodlnější prostředek - rozšířená syntaxe příkazu if: if podmínka1 příkazy1 elseif podmínka2 příkazy2 else příkazy3 end větev if musí být právě jedna větev elseif nemusí být vůbec, případně jich může být více větev else může být nanejvýš jedna
4 Příklad 4 - chceme rozhodovat o poloze hodnoty proměnné a vzhledem k číslu 5: if a < 8 disp('a je mensi nez 5') elseif a > 8 disp('a je vetsi nez 5') elseif a == 8 disp('a je rovno 5') else error('Nedefinovaná situace!') end Činnost příkazu if obecně: nejprve se testuje pravdivost podmínky1. Pokud platí, provedou se příkazy1 a ostatní větve příkazu jsou ignorovány. Pokud podmínka1 neplatila, začne se testovat podmínka2 - když platí, provedou se příkazy2 a zbylé větve jsou ignorovány; neplatí-li, pokračuje se další větví elseif (je-li ještě nějaká)... V případě, že ani jedna z podmínek neplatila, jsou provedeny příkazy ve větvi else (je-li přítomna). Činnost příkazu demonstruje vývojový diagram:
End of Lecture Good Night.