Více možností: elseif
Pomocí if a else si program vybírá ze dvou možností. Často jich je ale víc. Pro další možnosti přidejte větve elseif („jinak pokud“), každou s vlastní podmínkou a vlastním then:
local pocasi = "zataženo"
if pocasi == "slunečno" then
print("Zalít pole dvakrát")
elseif pocasi == "zataženo" then
print("Zalít pole jednou")
else
print("Dnes se nezalévá")
endVypíše:
Zalít pole jednouProgram prochází podmínky shora dolů a provede blok první pravdivé podmínky. Zbývající větve přeskočí, i kdyby některá další podmínka byla také pravdivá. Blok else se provede, jen když není pravdivá žádná podmínka. Větví elseif můžete přidat, kolik potřebujete, vždy mezi if a else. else je nepovinné: bez něj se neprovede nic, když žádná podmínka není pravdivá. A ať je větví kolik chce, všechny uzavírá jediné end.
Protože vyhrává první pravdivá podmínka, záleží na pořadí:
local vejce = 40
if vejce >= 12 then
print("Na trh pojede jedna krabice vajec")
elseif vejce >= 36 then
print("Na trh pojedou tři krabice vajec")
endVypíše:
Na trh pojede jedna krabice vajec40 vajec stačí na tři krabice, ale už první podmínka je pravdivá, takže se program k druhé vůbec nedostane. Přísnější podmínku dejte na začátek: nejdřív vejce >= 36, potom vejce >= 12.
elseif je jedno slovo. Když ho napíšete jako dvě, else if znamená něco jiného: větev else, ve které je nový, samostatný příkaz if, a ten potřebuje vlastní end:
local pocasi = "déšť"
if pocasi == "slunečno" then
print("Zalít pole dvakrát")
else if pocasi == "zataženo" then
print("Zalít pole jednou")
else
print("Dnes se nezalévá")
endmain.lua:8: 'end' expected (to close 'if' at line 2) near <eof>end na řádku 8 uzavře vnitřní if z řádku 4 a na vnější if z řádku 2 už žádné nezbude. Napište elseif jako jedno slovo a jedno end bude stačit.
Jak psát:
Pokyny
Spusťte program: skončí chybou. Opravte ji tak, že napíšete elseif jako jedno slovo. Program pak vypíše Skleník: 15 °C a Zavřít okna.
Přidejte ještě jednu větev elseif s podmínkou teplota > 20, která vypíše Otevřít jedno okno, a změňte teplota na 24. Program by měl vypsat:
Skleník: 24 °C
Otevřít jedno oknoPokud vypíše Zavřít okna, je podmínka teplota > 10 dřív a zachytí i 24 °C: přesuňte novou větev nad ni.
Začněte programovat zdarma
4/10