1.3.2. Více větví - case

Tato podmínka je vlastně složení několika podmínek v jedné. Výhoda case spočívá v tom, že když chcete porovnat proměnnou s několika hodnotami, tak se nemusíte piplat se všemi těmi if, then a else.

Příklad 1.9. case - obecná syntaxe (C)

 int i;

switch (i) {
  case 1:
   /* Blok 1 */
    break;
  case 2:
    /* Blok 2 */
    break;
  case 3:
    /* Blok 3 */
    break;
  default:
    /* Blok default */
    break;
}

Příklad 1.10. case - obecná syntaxe (Pascal)

 var i:Integer;
begin
  // příkazy
  case i of
  hodnota_i_1 : // Blok 1
  hodnota_i_2 : // Blok 2
  hodnota_i_3 : // Blok 3
  else // blok pro hodnoty jiné než v předešlých větvích;
end;

Příklad 1.11. case - jednoduchý příklad (C)

 int i;

switch (i) {
  case 1:
   printf('Hodnota proměnné i je 1');
    break;
  case 2:
   printf('Hodnota proměnné i je 2');
    break;
  case 3:
   printf('Hodnota proměnné i je 3');
    break;
  default:
   printf('Hodnota proměnné i je jiná než 1, 2 nebo 3');
    break;
}

Příklad 1.12. case - jednoduchý příklad (Pascal)

var i:Integer;
begin
  // příkazy
  case i of
  1 : writeln('Hodnota proměnné i je 1');
  2 : writeln('Hodnota proměnné i je 2');
  3 : writeln('Hodnota proměnné i je 3');
  else writeln('Hodnota proměnné i je jiná než 1, 2 nebo 3');
end;