|
Les bases du LUA
[modifier] Opérateurs ArithmétiquesCODE +
- * / ^ (puissance)
[modifier] ConditionnelsCODE < (inférieur)
> (supérieur) <= (inférieur ou égal) >= (supérieur ou égal) == (égal) ~= (différent) Tous produisent un résultat vrai (true) ou faux (false). [modifier] LogiquesCODE and
or not Tous produisent un résultat vrai (true) ou faux (false).
[modifier] VariablesCODE Variables globales
Elles sont déclarées le plus simplement, variable = 10 v1,v2 = 4,18
[modifier] Variables locales et BlocksCODE Spécifiées par le mot clé local.
local i = 1 Un block est le corps de la structure d'une instruction, c'est la portée de la variable. On peut définir un block par do code end. x = 10 local i = 1 while i<=x do local x = i*2 print(x) i = i + 1 end if i > 20 then local x x = 20 print(x + 2) else print(x) end print(x) variable globale variable local dans le script variable local dans le while 2, 4, 6, 8... variable local dans le then 22 10 (variable globale) 10 (variable globale)
[modifier] ConditionsCODE if then else
Les structures sont, if [condition] then code end if a<0 then a = 0 end if [condition] then code else code end if a<b then return a else return b end Il est possible d'avoir plusieurs conditions avec elseif. if op == "+" then r = a + b elseif op == "-" then r = a - b elseif op == "*" then r = a*b elseif op == "/" then r = a/b else error("invalid operation") end
[modifier] Les bouclesCODE while
La structure est while [condition] do code end local i = 1 while i<100 do print(i) i = i + 1 end
[modifier] RepeatCODE Syntaxe :
repeat code until [condition] Tant que la condition n'est pas rempli la boucle s'exerce. i=0 repeat i=i+1 until i<10
[modifier] for numériqueCODE Il y a aussi une boucle "généric".
La syntaxe est la suivante for [mini],[maxi],[pas] do code end Le paramĂštre [pas] est optionnel. for i=10,0,-1 do carre=i*i end On peut stopper la boucle avec l'instruction break.
[modifier] Les fonctionsCODE Syntaxe
function x() code end Pour appeler la fonction, x() MĂȘmes si la fonction n'a aucuns arguments, les () doivent ĂȘtre Ă©crites.
[modifier] Passer des argumentsCODE function carre(x) x = x * x end carre(2) -----> appel la fonction carre(x) avec l'argument x=2.
[modifier] Retourner des valeursUtiliser l'instruction return. CODE function carre(x) a = x * x return a end r = carre(2) -----> r est Ă©gal Ă 4. Return doit ĂȘtre spĂ©cifier en fin de fonction. Si pour une raison ou pour une autre vous avez besoin de retourner une valeur Ă l'intĂ©rieur de votre fonction et plus Ă la fin, vous devrez lui attribuer un block spĂ©cial.
CODE function Emc2(m,c)
a = c * c b = m * a return b,a end e,c2 = Emc2(10,2) -----> e = 40 et c2 = 4.
[modifier] MathToutes les fonctions sont spécifiées avec une variable entre parenthÚses. Mais pour certaines, les arguments sont précisés. CODE set_value(x,y,math.floor(var))
pi=math.pi() math.abs math.acos math.asin math.atan math.atan2 math.ceil math.cos math.deg math.exp math.floor math.log math.log10 math.max(a,b,...) math.min(a,b,...) math.mod math.pow(a,B) math.rad math.sin math.sqrt math.tan math.frexp math.ldexp math.random(*) math.randomseed(*) math.pi valeur absolue acosinus (angle) sinus (angle) atangente (angle)
[modifier] arrondie à l'entier supérieurCODE cosinus (valeur)
conversion en degré exponentiel retourne un entier (tronque la partie décimale)
[modifier] logarythmeCODE logarythme base 10
valeur maximum valeur minimum [modifier] PuissanceCODE conversion en radian
sinus (valeur) racine carré tangente (valeur) retourne un nombre "aléatoire" entre 0 et 1 graine pour le générateur de nombre constante pi
|