Konečné jádro programování řídícího toku pro učení jsou podmíněné příkazy ( if a if/else ).
An if/else příkaz provede "pokud" kódový blok pouze tehdy, pokud je poskytovántestplatí pro stav světa v době, kdy program dosáhne prohlášení. V opačném případě program provede kódový kód "ostatní".
if( test ){
pokud kódový blok
} else {
jinak kódový blok
}
Abychom získali pocit, kde by se mohly hodit podmíněné příkazy, kuzel program, který má Karel invertovat řádek kuzel s. Kdyby měl čtverec dříve kuzel , měl by ho Karel vyzvednout. Pokud čtverec nemá kuzel , měl by ho Karel dát dolů.
Všimněte si, že if prohlášení nemusí mít else blok - v takovém případě se prohlášení opperates jako a while smyčka, která se provede pouze jednou:
if( test ){
pokud kódový blok
}
Ten poslední příklad použil novou podmínku. Zde je seznam všech podmínek, o kterých Karel ví:
| Test | Naproti | Co kontroluje |
|---|---|---|
frontIsClear() |
frontIsBlocked() |
Je před Karlem zeď? |
beepersPresent() |
noBeepersPresent() |
Je na tomto rohu kuzel s? |
leftIsClear() |
leftIsBlocked() |
Je tu Karelova zeď? |
rightIsClear() |
rightIsBlocked() |
Má Karel pravdu? |
beepersInBag() |
noBeepersInBag() |
Nějaká kuzel s v Karlově sáčku? |
facingNorth() |
notFacingNorth() |
Je Karel obrácený na sever? |
facingSouth() |
notFacingSouth() |
Je Karel obrácen k jihu? |
facingEast() |
notFacingEast() |
Je Karel obrácený na východ? |
facingWest() |
notFacingWest() |
Je Karel obrácen směrem na západ? |
Gratuluji! Nyní znáte všechny základní programovací bloky řízení. Zatímco jste se naučili s Karlem, metody, zatímco smyčky, pro smyčky, if / else příkazy pracují stejným způsobem v téměř všech hlavních jazycích, včetně Java.
Nyní, když máte stavební bloky, můžete je dát dohromady a vytvořit řešení stále složitějších problémů. Programování je do značné míry věda o řešení problémů pomocí počítače. Protože problémy jsou často obtížné, řešení - a programy, které tato řešení implementují - mohou být také obtížné. Abychom vám usnadnili vývoj těchto řešení, musíte přijmout metodiku a disciplínu, která sníží úroveň této složitosti na zvládnutelnou míru.