Fonctions en Lua

Introduction aux Fonctions

Les fonctions en Lua représentent des segments de code que l'on peut réutiliser de manière répétée. Elles sont conçues pour exécuter des tâches spécifiques lorsqu'elles sont invoquées. Il est essentiel de déclarer une fonction dans le contexte où elle va être utilisée.

Déclaration d'une Fonction

Pour déclarer une fonction, on utilise son nom. Les éléments nécessaires pour une déclaration de fonction incluent :

  • Le mot-clé function.
  • Le nom de la fonction en camel case, où le premier mot commence par une minuscule et les mots suivants par une majuscule, tel que : iPhone.
  • Une liste optionnelle d’arguments séparés par des virgules, entourée de parenthèses ().
  • Le code qui sera exécuté par la fonction.
  • Le mot-clé end à la fin pour marquer la fin de la fonction.

Voici un exemple de code pour illustrer une fonction nommée difference() qui prend deux valeurs et affiche leur différence :

function difference(value1, value2)
    result = value1 - value2
    print(result)
end

Les Paramètres

Lorsqu'une fonction est définie, elle peut accepter des valeurs sous forme de paramètres. Ces paramètres ne seront attribués une valeur que lorsque la fonction sera effectivement appelée. Voici un exemple :

function sum(number1, number2)  -- number1 et number2 sont des paramètres
    result = number1 + number2
    print(result)
end

Appeler des Fonctions

Pour invoquer une fonction, il suffit de faire référence à son nom accompagné de parenthèses, après qu'elle ait été définie. Tous les codes à l'intérieur de la fonction seront exécutés lors de son appel.

Voici un exemple d’appel de fonction :

function product()
    result = 2 * 5
    print(result)
end
product()  -- Cela appelle la fonction

Arguments

Quand une fonction est invoquée, une liste de valeurs séparées par des virgules placées entre parenthèses représente les arguments passés à la fonction.

function sum(number1, number2)
    result = number1 + number2
    print(result)
end
sum(30, 20)  -- 30 et 20 sont des arguments

Arguments Nil

Dans le cas où une fonction est appelée sans que suffisamment d'arguments lui soient fournis, les paramètres restants seront assignés à nil.

function sum(number1, number2)
    result = number1 + number2
    print(result)
end
sum()  -- Cela produit une erreur car on ne peut pas additionner des valeurs nil

Le Mot-clé Return

La sortie d'une fonction peut être spécifiée avec le mot-clé return. Cela renvoie la valeur là où la fonction a été appelée et termine l'exécution de la fonction.

function product(number1, number2)
    result = number1 * number2
    return result
end

total = product(2, 4)
print(total)  -- Affiche : 8