Difference between revisions of "Case/fr"

From Free Pascal wiki
Jump to navigationJump to search
(Use pascal highlighter)
Line 5: Line 5:
 
L'instruction case comporte les [[Reserved words/fr|mots réservés]] [[Of/fr|of]] et [[End/fr|end]]. [[Else/fr|else]] peut être utilisée si besoin est.
 
L'instruction case comporte les [[Reserved words/fr|mots réservés]] [[Of/fr|of]] et [[End/fr|end]]. [[Else/fr|else]] peut être utilisée si besoin est.
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
  case place of
 
  case place of
 
   1: ShowMessage('Gold medal');
 
   1: ShowMessage('Gold medal');
Line 16: Line 16:
 
=== Fonction WhatIsChar ===
 
=== Fonction WhatIsChar ===
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
  function WhatIsChar( c:char ):string;
 
  function WhatIsChar( c:char ):string;
 
  var
 
  var
Line 36: Line 36:
 
Case est aussi utilisé dans les [[Record/fr|enregistrements]] avec variantes.
 
Case est aussi utilisé dans les [[Record/fr|enregistrements]] avec variantes.
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   type
 
   type
 
        
 
        

Revision as of 22:19, 24 January 2020

Deutsch (de) English (en) español (es) suomi (fi) français (fr) русский (ru)

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.

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

Fonction WhatIsChar

 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.

  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