Sign in Join
Wiki copytemporary

Basic Pascal Tutorial/Chapter 3/CASE/fr: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Basic Pascal Tutorial/Chapter 3/CASE/fr

OldNewLine
1+[[Basic Pascal Tutorial/fr|Tutoriel de Pascal Objet]] : Structures de contrôle / Branchements conditionnels / **Cas**
2+
3+`CASE` ouvre une instruction de sélection. L'instruction `case` compare la valeur d'une expression ordinale à chaque sélecteur, qui peuvent être une [[Const/fr|constante]], une sous-plage ou une liste de celles-ci séparées par des virgules. Le champ sélecteur est séparée de l'action (instructions) par deux-points (:).
4+
5+Supposez que vous voulûtes vous brancher sur une voie si `b` vaut `1, 7, 2037` ou `5` et sur une autre sinon. Vous pourriez faire comme cela :
6+
7+``` pascal
8+if (b = 1) or (b = 7) or (b = 2037) or (b = 5) then
9+ Instruction1
10+else
11+ Instruction2;
12+```
13+
14+Mais dans ce cas, il pourrait être plus simple de lister les nombres pour lesquels vous voulez que `Instruction1` s'exécute. Vous ferez alors cela avec une instruction `case` :
15+
16+``` pascal
17+case b of
18+ 1,7,2037,5: Instruction1;
19+ otherwise Instruction2
20+end;
21+```
22+
23+La forme générale de l'instruction `case` est :
24+
25+``` pascal
26+case sélecteur of
27+ Liste1: Instruction1;
28+ Liste2: Instruction2;
29+ ...
30+ Listen: Instructionn;
31+ otherwise Instruction
32+end;
33+```
34+
35+La partie `otherwise` est facultative. Quand elle est disponible, elle diffère d'un compilateur à un autre. Dans plusieurs compilateurs, vous avez le mot `else` au lieu de `otherwise`.
36+
37+Un sélecteur est une variable d'un type de donnée ordinal. Vous ne pouvez pas utiliser de réels (ni de chaînes de caractères) !
38+
39+Observez que les listes consistent en valeurs littérales. À savoir, vous devez employer des constantes ou des valeurs en dur, mais pas des variables.
40+
41+---
42+*From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 3/CASE/fr", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history