Section courante

A propos

Section administrative du site

CASE OF

Cas de
Delphi/Kylix/Lazarus

Syntaxe

CASE select OF
 etiquette1: instruction1;
 etiquette2: instruction2;
 ...
 etiquetten: instructionn;
 ELSE instructionautre;
END;

Paramètres

Nom Description
select Ce paramètre permet d'indiquer l'expression à évaluer
etiquette1, etiquette2, etiquetten Ce paramètre permet d'indiquer une valeur à évaluer
instruction1, instruction2, instructionn Ce paramètre permet d'indiquer l'instruction exécuté si la valeur correspond
instructionautre Ce paramètre permet d'indiquer l'instruction exécuté si aucune valeur ne correspond

Description

Ce mot réservé permet de définir une liste de conditionnels ayant comme point de comparaison un même résultat. L'instruction case de Delphi étend celle de Pascal standard en incluant la condition facultative else. Si aucun autre cas ne correspond à l'expression, le Delphi exécute les instructions du else. La clause else est similaire au mot réservé otherwise trouvé dans d'autres extensions Pascal, comme par exemple dans le Apple Pascal ou le UCSD Pascal. Le type d'expression de cas doit être un type ordinal, c'est-à-dire un entier, un caractère ou une énumération. Chaque sélecteur de cas doit être une expression constante du type approprié ou un intervalle de constante (constante..constante). Les cas peuvent être dans n'importe quel ordre, mais la clause else doit être la dernière. Les sélecteurs de cas doivent être uniques. Chaque cas doit avoir une seule déclaration, sauf que vous pouvez en avoir plusieurs après le else.

Remarques

Exemple

Cet exemple permet d'évaluer la valeur de la variable «a» :

  1. Program CaseOfSamples;
  2.  
  3. {$APPTYPE CONSOLE}
  4. Uses SysUtils;
  5.  
  6. Var a:Integer = 2;
  7.  
  8. BEGIN
  9.  Case a of
  10.    1,2,3:WriteLn('Entre 1 et 3');
  11.    4,5,6:WriteLn('Entre 4 et 6');
  12.    7:WriteLn('C''est 7');
  13.    Else WriteLn('Inférieur ou égale à 0 ou supérieur à 8');
  14.  End; 
  15. END.

on obtiendra le résultat suivant :

Entre 1 et 3

Voir également

Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - Else
Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - End
Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - If
Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - Packed
Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - Record
Langage de programmation - Delphi/Kylix/Lazarus - Références de mots réservés (mots clefs) - Then

Dernière mise à jour : Mercredi, le 18 février 2015