Sign in Join
Wiki copytemporary

Revision 1 of 2, by Kai Burghardt on 8-10-2022. The page as it is now.

Case/fr

Case débute une instruction case. Cette instruction compare la valeur de l'expression ordinale qui suit le case à chaque sélecteur, qui peut être une constante, un intervalle, ou une liste d'eux séparé par des virgules. Le champ sélecteur est séparé de l'action par deux-points (:).

L'instruction case comporte les mots réservés of et end. else peut être utilisée si besoin est.

pascal
 case place of
   1: ShowMessage('Gold medal');
   2: ShowMessage('Silver medal');
   3: ShowMessage('Bronze medal'); 
   else ShowMessage('Better luck next time'); 
 end;

Fonction WhatIsChar

pascal
 function WhatIsChar( c:char ):string;
 var
   s : string;
 begin
   s := '';
   case c of
     '0' .. '9' : s := 'digit (0-9)';
     'a' .. 'z' : s := 'lowercase letter (a-z)';
     'A' .. 'Z' : s := 'uppercase letter (A-Z)';
     '+' , '-'  : s := 'sign (+ or -)';
   end;
   result := s;
 end;

Enregistrement avec variantes

Case est aussi utilisé dans les enregistrements avec variantes.

pascal
  type
      
   ScaleKelvin = 223 .. 323;
   ScaleCelsius = -50 .. 50;
    
   TemperatureScale = ( celsius, kelvin ) ;
   Temperature = record
    case scale :   TemperatureScale of
     celsius : (celsius_value : ScaleCelsius);
     kelvin : (kelvin_value : ScaleKelvin);
   end;

Voir aussi


From the Free Pascal wiki, page "Case/fr", as it stood on 2022-08-10 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.