<tt>
Les fonctions
</tt>

<ms>
Les Fonctions sont   des blocs de code qui peuvent être exécutées plusieurs fois et depuis plusieurs endroits du graphique tactile. Une fonction est une subroutine qui, différemment d'une procédure, au bout de son exécution retourne une valeur.
Une fonction se déclare exactement comme une procédure.
- Proc Nom(paramètres)

Par exemple:
- Proc Test(x)

"Proc" est le mot clé qui identifie toujours une procédure ou une fonction.  L'étiquette "Test" est le nom de la fonction. Le paramètre "x" est la donnée qui est transmis au code de la fonction. Les paramètres d'une fonction sont déclarés comme variables locales de la même.
En général la structure d'une fonction est identique à celle d'une procédure, cependant voir aussi le chapitre qui traite les Procédures. Afin qu'une procédure se transforme en une fonction et qu'elle retourne une valeur, dans la même il faut valeuriser la variable "result". 
Par exemple:
- Proc Test(x)
- result = x*2
- EndProc

Une fonction, vu qu'elle retourne une valeur, peut être utilisée comme expression dans les attributions et dans les opérations. Par exemple:

- I = Test(30)
La variable "I" contient la valeur 60, vu que la fonction "Test" retourne une valeur et lui attribue la donnée "x*2", dans ce cas "30*2".

- I = Test(30)+7
Dans ce cas la variable "I" contient la valeur 67, puisque avant l'attribution il a été effectuée un'opération d'addition.

Une fonction peut être exécutée comme une procédure. Dans ce cas la valeur retournée est ignorée.
Test(4)

Une fonction peut être utilisée comme paramètre d'une procédure ou d'un'autre fonction. Par exemple:
- I = Test(Test(2))
La valeur attribuée à "i" est 8. La fonction "Test" a été utilisée comme paramètre d'elle même.

Une procédure ou une fonction peut faire appelle à elle-même dans un cycle récursif, directe ou indirecte. Les cycles récursifs sont contrôlés pour éviter des loop sans fin. On peut utiliser la récursivité jusqu'à 256 fois.
</ms>

<rl>
TBiblosBrailleGeometry.Language.RelationalOperators
TBiblosBrailleGeometry.Language
</rl>

<ck>
01UOL7R17FF5Y8
</ck>

<in>
1910 1778
</in>
