TOP
tetris Programmez un Tetris en Java
360 pages PDF pour apprendre à votre rythme.
Développez des jeux vidéo en Java.
www.jdevmaker.com
Gimp 2.4
Documentation
Tutoriels
Ressources
Divers

Dernière mise à jour le 05 avr 2008
consultée 3255 fois
Apprendre  ›  Gimp expliqué  ›  Sommaire Gluas  ›  Les bases

 

Gluas : Les bases du langage

Ce document est sous un contrat Creative Commons.

 

Pour plus d'informations concernant les variables, les fonctions, l'algorithmie, la programmation, voyez le dossier sur le Scheme.

Opérateurs

Arithmétiques

+

-

*

/

^ (puissance)

Conditionnels

< (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).

Logiques

and

or

not

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

 

Variables

Variables globales

Elles sont déclarées le plus simplement :

variable = 10

v1,v2 = 4,18

 

Variables locales et blocs

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     variable globale
local i = 1     variable local dans le script
 
while i<=x do
   local x = i*2     variable local dans le while
   print(x)     2, 4, 6, 8...
   i = i + 1
end
 
if i > 20 then
   local x     variable local dans le then
   x = 20
   print(x + 2)     22
else
   print(x)     10 (variable globale)
end
 
print(x)     10 (variable globale)

 

Alternatives & conditions

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

 

Les boucles

while

La structure est while [condition] do code end

local i = 1

while i<100 do

   print(i)

   i = i + 1

end

 

Repeat

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

 

for numérique

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.

 

Les fonctions

Syntaxe

function x()

   code

end

Pour appeler la fonction :

x()

Mêmes si la fonction n'a aucuns arguments, les () doivent être écrites.

 

Passer des arguments

function carre(x)

   x = x * x 

end

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

 

Retourner des valeurs

Utilisez l'instruction return.

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 bloc spécial.

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

function Emc2(m,c)

   a = c * c

   b = m * a

   return b,a

end

e,c2 = Emc2(10,2)    ----->    e = 40 et c2 = 4.

 

Math

Toutes les fonctions sont spécifiées avec une variable entre parenthèses. Mais pour certaines, les arguments sont précisés.

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)

 

arrondie à l'entier supérieur

cosinus (valeur)

conversion en degré

exponentiel

retourne un entier (tronque la partie décimale)

logarythme

logarythme base 10

valeur maximum

valeur minimum

modulo

Puissance

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

 

(*) Quand vous l'appelez sans argument, math.random retourne un entier pseudo-aléatoire compris entre 0 et 1. Quand vous l'appelez avec un argument n, math.random retourne un entier pseudo-aléatoire compris entre 1 et n. Quand vous l'appelez avec deux argument 2 et u, math.random retourne un entier pseudo-aléatoire compris entre 2 et u. La fonction math.randomseed paramètre une graine pour la génération du nombre pseudo-aléatoire. Des graines égales, produisent d'égales séquence de nombre.

 

 

Valide XHTML 1.0 Strict
Valide CSS 2.0
Valide Accessibilité
Creative Commons License

Tous les documents et ressources sont sous un contrat Creative Commons.