IF ... THEN |
Si ... alors |
|---|---|
| ABasiC | Commodore Amiga |
Syntaxe
| IF relationship THEN linenumber |
| IF relationship THEN GOTO linenumber |
| IF relationship THEN statement[:statement]... |
| IF relationship THEN statement[:statement]... ELSE statement[:statement]... |
Paramètres
| Nom | Description |
|---|---|
| relationship | Ce paramètre représente la condition logique ou l'expression numérique à évaluer. Il peut s'agir d'une relation logique (X > 5, A = B, etc.) ou d'une expression retournant une valeur numérique (ex. X MOD 3). Si cette valeur est différente de zéro, la condition est considérée comme vraie. |
| linenumber | Ce paramètre indique le numéro de ligne vers lequel le programme doit sauter si la condition est vraie. Il est utilisé dans les formes IF ... THEN linenumber et IF ... THEN GOTO linenumber. |
| statement[:statement]... | Ce paramètre contient une ou plusieurs instructions à exécuter si la condition est vraie. Les instructions doivent être séparées par deux-points (:) et tenir sur une seule ligne avec l'instruction IF. |
| ELSE statement[:statement]... | Ce paramètre indique les instructions à exécuter si la condition est fausse. Il est facultatif et doit se trouver sur la même ligne que l'instruction IF. Les instructions du bloc ELSE doivent également être séparées par deux-points (:) si elles sont multiples. |
Description
Cette instruction permet d'effectuer un test conditionnel.
Remarques
- L'instruction IF ... THEN est une commande de branchement conditionnel. Il teste la vérité d'une relation; en fonction du résultat, il s'oriente, ou se dérive, vers différentes parties du programme. L'instruction IF ... THEN donne à un ordinateur la capacité de prendre des décisions et de réagir différemment à différentes circonstances.
- Une instruction IF ... THEN contient généralement une relation entre le IF et le THEN. Une action conditionnelle suit THEN; cette action peut être une commande, une série de commandes ou un numéro de ligne. Un numéro de ligne doit être autonome ou avec uniquement GOTO, comme dans le premier format de la syntaxe. Toutes les instructions appartenant à l'action conditionnelle doivent tenir sur la ligne de programme avec l'instruction IF ... THEN. La condition n'affecte pas les lignes de programme suivante.
- Vous pouvez éventuellement utiliser le mot clef ELSE pour répertorier les instructions s'exécutant si la relation spécifiée n'est pas vraie. Par exemple, l'instruction suivante :
- Quand le ABasiC exécute une commande IF ... THEN, il évalue la relation comme vraie ou fausse. Si la relation est vraie, les actions conditionnelles sont exécutées et le programme continue. Si la relation est fausse, l'exécution du programme passe à la ligne suivante et le ABasiC ignore toutes les actions conditionnelles restantes sur la ligne de programme IF ... THEN.
- Si l'action conditionnelle suivant «THEN» est un numéro de ligne et que la relation est vraie, l'exécution du programme saute à cette ligne. Si la relation est fausse, le programme continue avec la ligne et immédiatement après IF ... THEN.
- Pour rendre le saut conditionnel plus apparent, vous pouvez remplacer l'élément THEN par GOTO pour créer une instruction IF ... GOTO. Le IF ... GOTO fonctionne exactement comme l'instruction IF ... THEN, sauf qu'après GOTO, vous ne pouvez pas utiliser de commandes comme activité conditionnelle. Vous ne pouvez lister qu'un numéro de ligne.
- Lorsqu'une instruction IF...THEN évalue une relation, elle remplace -1 pour la relation si elle est vraie et 0 si elle est fausse. Il effectue ensuite l'activité conditionnelle si le résultat est une valeur différente de zéro. Vous pouvez placer une expression numérique, telle que :
- X MOD 3
teste la valeur de G. Si G est égal à zéro, le contrôle du programme passe à la ligne 40. Si G n'est pas zéro, la valeur de B est augmentée de 15.
au lieu d'une relation entre «IF» et «THEN». Les instructions IF ... THEN teste l'expression pour vrai (différent de zéro) ou faux (0) et procède en conséquence.
Dernière mise à jour : Mardi, le 11 Août 2020