Logo name
Menu
Navigation

. Accueil



> PSP SOFTWARES LES BASES DU LANGUAGE LUA

Les bases du LUA


Sommaire

[modifier] Opérateurs Arithmétiques

CODE
+

-

*

/

^ (puissance)


[modifier] Conditionnels

CODE
< (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] Logiques

CODE
and

or

not

Tous produisent un résultat vrai (true) ou faux (false).


[modifier] Variables

CODE
Variables globales

Elles sont déclarées le plus simplement,

variable = 10

v1,v2 = 4,18


[modifier] Variables locales et Blocks

CODE
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] Conditions

CODE
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 boucles

CODE
while

La structure est while [condition] do code end

local i = 1

while i<100 do

   print(i)

   i = i + 1

end


[modifier] Repeat

CODE
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érique

CODE
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 fonctions

CODE
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 arguments

CODE

function carre(x)

   x = x * x

end

carre(2)    ----->    appel la fonction carre(x) avec l'argument x=2.




[modifier] Retourner des valeurs

Utiliser 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.




Il est possible de passer plusieurs arguments, et de retourner plusieurs valeurs,

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] Math

Toutes 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érieur

CODE
cosinus (valeur)

conversion en degré

exponentiel

retourne un entier (tronque la partie décimale)


[modifier] logarythme

CODE
logarythme base 10

valeur maximum

valeur minimum

[modifier] Puissance

CODE
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


Tuto réalisé par Tounet membre du forum.


Reproduction interdite sans autorisation - Copyright © Gx-Mod - Déclaration CNIL 831.
IpbWikiPowered by MediaWiki