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á")
end

Vypíše:

Zalít pole jednou

Program 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")
end

Vypíše:

Na trh pojede jedna krabice vajec

40 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á")
end
main.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.

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 okno

Pokud 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

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

4/10