Case in Pascal

  • E’ un modo per eseguire determinate operazioni in base al valore di una variabile. Utile se ad esempio devo fare diverse attività a seconda che una variabile valga 1, 2, 3, ecc…

  • E’ più semplice e leggibile dell’ if ma non si possono usare gli operatori >, < , ecc...

  • Nella variabile di controllo si possono usare caratteri (char) e interi (integer) o intervalli di interi come 1..7

Calcolatrice in Pascal:

program prova;

uses crt;

var num1, num2, risultato: real;

operazione: char;

begin

writeln('Inserisci il primo numero');

readln(num1);

writeln('Inserisci il secondo numero');

readln(num2);

writeln('Inserisci l''operazione');

readln(operazione);

case operazione of

'+', 'p':

begin

risultato := num1 + num2;

end;

'-':

begin

risultato := num1 - num2;

end;

'*':

begin

risultato := num1 * num2;

end;

'/': begin

risultato := num1 / num2;

end;

else

begin

risultato := -1;

end;

end;

writeln('Il risultato e''', risultato: 2: 2);

readln();

end.

Esempio di programma a menu

Conversione di un voto da numero a testo in Pascal:

program prova;

uses

crt;

var

voto: integer;

begin

writeln('Inserisci il tuo voto e ti dico se e'' sufficiente');

readln(voto);

case voto of

1..5:

begin

writeln('Insufficiente');

end;

6..7:

begin

writeln('Sufficiente');

end;

8..10:

begin

writeln('Ottimo');

end;

end;

readln();

end.

var

scelta: char;

begin

repeat

writeln('1) Per fare qualcosa');

writeln('2) Per fare qualcosa altro');

writeln('3) Per fare qualcosa altro ancora');

writeln('0) Esci');

readln(scelta);

case scelta of

'1':

begin

// fa qualcosa

end;

'2':

begin

// fa qualcosa altro

end;

'3':

begin

// fa qualcosa altro ancora

end;

end;

until scelta = '0';

readkey;

end.