Programování v Lua/Příkazy a podmínky: Porovnání verzí
Smazaný obsah Přidaný obsah
meziuložení |
if 1 == 1 then code end |
||
Řádek 1:
== Poznámky ==
* Lua nezná příkaz <code>switch</code>, jako alternativa lze použít třeba <code>elseif</code>
== Teorie ==
Řádek 18 ⟶ 19:
=== Bloky ===
* můžeme jej explicitně vymezit pomocí klíčových slov
* slouží k ohraničení určité části kódu třeba pro lepší kontrolu nad rozsahem lokálních proměnných
<syntaxhighlight lang=lua line start=1>
Řádek 30 ⟶ 31:
</syntaxhighlight>
=== if then else, elseif ===
* podmínku začneme klíčovým slovem <code>if</code>, za ním následuje samotná podmínka
* pokud je podmínka splněna, pokračuje se vykonáváním kódu za klíčovým slovem <code>then</code>
* dále můžeme použít větev <code>elseif</code>, za ní opět následuje podmínka a kód začínající <code>then</code>
* může také následovat nepovínná část <code>else</code>, která se vykoná v případě, že podmínka nebyla splněna
* celá podmínka je ukončena klíčovým slovem <code>end</code>
==== if then ====
<syntaxhighlight lang=lua line start=1>
if a < 0 then a = 0 end
-- lze zapsat i jako:
if a < 0 then
a = 0
end
</syntaxhighlight>
====
<syntaxhighlight lang=lua line start=1>
if a > b then return a else return b end
-- lze zapsat i jako:
if a > b then
return a
else
return b
end
</syntaxhighlight>
====
<syntaxhighlight lang=lua line start=1>
if op == "+" then
result = a + b
elseif op == "-" then
result = a - b
elseif op == "*" then
result = a*b
elseif op == "/" then
result = a/b
elseif op == "^" then
result = a^b
elseif op == "%" then
result = a%b
else
print("invalid operation")
end
</syntaxhighlight>
=== break ===
* značí se <code>break</code>
<syntaxhighlight lang=lua line start=1>
</syntaxhighlight>
=== return ===
* značí se <code>return</code>
* vrátí hodnotu z funkce nebo funkci ukončí
<syntaxhighlight lang=lua line start=1>
</syntaxhighlight>
|