IF "Expression logique" THEN ...ELSE ...

L’instruction if then else est la plus couramment utilisée pour tester une condition logique. Le "if" en français "si" exprime la condition. On l'associe à "then" en français "alors" et accessoirement à "else" en français "sinon".
Vous trouverez ci-dessous des exemples.

Opérateurs de comparaison :

= : Renvoie vrai si égal.
<> : Renvoie vrai si n'est pas égal.
> : Renvoie vrai si supérieur à.
>= : Renvoie vrai si supérieur ou égal.
< : Renvoie vrai si Inférieur à.
<= : Renvoie vrai si inférieur ou égal.
in : Renvoie vrai si un élément est dans l'ensemble.

CONDITION IF :
If (une condition logique) then 
 begin 
    // Code à exécuter si la condition est vtai 
 end; 
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 120;  //x = 120
  y := 120;  //y = 120
  if (x = y) then
    begin
    Label1.Caption := 'X est égal à Y';
    // Ici la condition est vtai le Label1 affiche : X est égal à Y
    end;
end;

S'il n'y a qu'une instruction, nous pouvons alléger la syntaxe en suppriment "begin" et "end".

procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 120;  //x = 120
  y := 120;  //y = 120
  if (x = y) then
    Label1.Caption := 'X est égal à Y';
    // Ici la condition est vtai le Label1 affiche : X est égal à Y
    
end;
CONDITION IF ELSE :
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
  if (x = y) then
    begin
     Label1.Caption := 'X est égal à Y';
     // Si la condition est vtai
    end // Le end qui précède le else ne doit jamais être suivit par un ";"
  else
    begin
    Label1.Caption := 'X n''est pas égal à Y';
    // Ici, la condition est fausse, le Label1 affiche : X n'est pas égal à Y
    end;
	
end;	

ci-dessous même syntaxe en suppriment "begin" et "end".

procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
  if (x = y) then
    Label1.Caption := 'X est égal à Y' // ici par de ";" à la fin
     // Si la condition est vtai
    else
    Label1.Caption := 'X n''est pas égal à Y';
    // Ici, la condition est fausse, le Label1 affiche : X n'est pas égal à Y

  end;

Ci-dessous un exemple qui permet vérifier si une valeur est égal, inférieur ou supérieur à une autre valeur.

procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
  // Dans l'exemple le Label1 affiche : X est plus petit que Y
  if (x = y) then
     Label1.Caption := 'X est égal à Y'
     // Si X est égal à Y
   else if (x < y) then
     Label1.Caption := 'X est plus petit que Y'
     // Si X est inferieur à Y
   else if (x > y) then
     Label1.Caption := 'X est plus grand que Y';
     // Si X est superieur à Y

 end;

Ci-dessous un exemple qui permet vérifier si le champs d'un TEdit est rempli.

procedure TForm1.Button1Click(Sender: TObject);
begin
 
  if (Edit1.Text = '') then
    begin
	// Si aucun texte dans le TEdit
    Label1.Caption := 'Veuillez remplir le champ texte';
    Edit1.SetFocus; // Donne le focus au TEdit
    end
  else
    begin
	// Si le texte saisi du TEdit est rempli
    Label1.Caption := 'Votre texte est : ' + Edit1.Text; // affiche le texte dans le Label1
    Edit1.Text := ''; // Vide le TEdit
    end;
	
end;	

Ci-dessous un exemple qui permet vérifier si un TCheckBox est cocher.

procedure TForm1.Button1Click(Sender: TObject);
begin
 
  if (CheckBox1.Checked) then
    begin
	// Si CheckBox1 est cocher
    Label1.Caption := 'La boite est cocher';
    end
  else
    begin
	// Si CheckBox1 n'est pas cocher
    Label1.Caption := 'La boite n''est pas cocher';
    end;
	
end;	
CONDITION IN :
procedure TForm1.Button1Click(Sender: TObject);
var
  nb: integer;
begin
   nb := 72;  //nb = 72
  if nb in [1..100] then
    Label1.Caption := 'Le nombre est compris entre 1 et 100'
     // Ici, la condition est vtai, le Label1 affiche : Le nombre est compris entre 1 et 100
    else
    Label1.Caption := 'Le nombre n''est pas compris entre 1 et 100';
    // La condition est fausse.
 
   // if nb in [32, 63, 72, 130] then : Si la valeur de "nb" est 32 ou 63 ou 72 ou 130 la condition est vtai 
 end;
CONDITION AND (ET) :
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
  // Dans l'exemple ci-dessous la condition est vtai
  if (x = 138) and (y = 247) then
    Label1.Caption := 'X est égal à 138 et Y est égal à 247'
     // Si x est égal à 128 et y est à égal 247 la condition est vtai
    else
    Label1.Caption := 'Une des valeurs ne correspond pas à la condition';
    // La condition est fausse.

 end;
CONDITION OR (OU) :
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
  // Dans l'exemple ci-dessous la condition est vtai
  // En modifiant la valeur la valeur y par 248, La condition sera fausse.
  if (x = 247) or (y = 247) then
    Label1.Caption := 'Une des valeurs correspond à la condition'
     // Si une des valeurs est égal à 247 la condition est vtai
    else
    Label1.Caption := 'Aucune valeurs ne correspond la condition';
    // La condition est fausse.

 end;
CONDITION OR + AND :
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: integer;
begin
  x := 138;  //x = 138
  y := 247;  //y = 247
   // Dans l'exemple ci-dessous la condition est fausse, x n'est pas superieur à 200
  if (x = 247) or (y = 247) and (x > 200) then
    Label1.Caption := 'Toutes les conditions sont remplies.'
     // Si une des valeurs est égal à 247 et que x est superieur à 200 la condition est vtai
    else
    Label1.Caption := 'Une des conditions n''est pas remplie.';
    // La condition est fausse.

 end;
CASE :
EXEMPLE :
procedure TForm1.Button1Click(Sender: TObject);
var choix : Integer;
begin
choix := 2;

case choix of
  0: Label1.Caption := 'Vous avez choisi zéro';
  1: Label1.Caption := 'Vous avez choisi un';
  2: Label1.Caption := 'Vous avez choisi deux';
  3: Label1.Caption := 'Vous avez choisi trois';
  // etc ....
else
  Label1.Caption := 'Il faut faire un choix !!!';
end;

end;