CAPITOLO 5

Le istruzioni di controllo

IF ... THEN

La più semplice formulazione IF...THEN è la seguente:

Punto.gif (924 byte) if condizione then begin  //Se la condizione è vera allora...

istruzione; //Esegui istruzioni...
istruzione;
istruzione;

End Else Begin //Se la condizione precedentemente esposta era falsa allora

istruzione; //Esegui istruzioni
istruzione;
istruzione;

end;

 

Quanto appena esposto va imparato come la tabellina del 2!

La maniera migliore per capire il costrutto IF...THEN è con un esempio:

 

{$APPTYPE CONSOLE}
Program Tre;
Uses Forms;
Var K: Integer;

Begin
  Write('Inserisci un numero: ');
  ReadLn(K);

  If K= 3 Then Begin
    WriteLn('Il numero era tre');
  End Else Begin
    WriteLn('Sicuramente non hai premuto il tre, bensì naltro numero');
  End;

  ReadLn;
End.

Il programma chiede un numero e se questo è tre visulizza la scritta il numero era tre.
A scanso di equivoci desidero farvi notare che anche la struttura del tipo
  If K= 3 Then
    WriteLn('Il numero era tre');
  Else
    WriteLn('Sicuramente non hai premuto il tre, bensì naltro numero');

Sarebbe stata sintatticamente corretta ma è fortemente sconsigliata, la motivazione è quanto mai ovvia: se necessitate di includere più azioni dopo il then queste andranno incluse in un blocco begin end in quanto l'allora della conclusione considera solo l'istruzione che segue. Rileggendo quanto precede mi accorgo che non sono stato assolutamente chiaro, ad ogni modo limitatevi ad utilizzare il costrutto come spiegato, eventualmente eliminate anche l'else se è inutile!
Si noti infine che gli operatori IF...THEN lavorano anche con le stringhe, provate il codice che segue:

{$APPTYPE CONSOLE}
Program Vanni;
Uses Forms;
Var S: String;

Begin
  Write('Inserisci il tuo nome: ');
  ReadLn(S);

  If S = 'Vanni' Then
    WriteLn('Salve a te grande coder');

  ReadLn;
End.

Inoltre si potranno usare anche i seguenti operatori logici oltre al segno = cioè <> (diverso) < (minore) > (maggiore), ad esempio 'Abc' > 'Def' sarà falso in quanto in ordine alfabetico 'abc' precede 'def'!

Con il prossimo capitolo si introdurranno i concetti di  routine, e unit compilata quindi si passerà alla programmazione Windows per trattare i cicli e gli eventi (enjoy).

Corso interamente creato da VB.