guida

Guida Pascal - 30. While..do

30. While..do

Questo ciclo chiamato ripetizione-finchè, iterazione precondizionale o più semplicemente while permette di ripetere un gruppo di istruzioni in base al valore che assume una certa condizione. La sua sintassi è la seguente:

while condizione do
  begin
    istruzione 1;
    istruzione 2;
    istruzione n
  end;

Mentre la condizione si mantiene vera viene eseguito il gruppo di istruzioni compreso tra begin e end indicato dopo il do. Tra begin ed end vanno inserite delle istruzioni che modifichino in un qualche modo il valore di verità della condizione. Questo è molto importante perché altrimenti il ciclo si ripeterebbe all'infinito e il programma non riuscirebbe mai ad eseguire le istruzioni successive ad end.
Esempio. Programma che esegue la divisione fra due numeri interi attraverso le sottrazioni successive.
Il programma deve:

program Divisione;
uses crt;
var 
  a, b, quo, res : integer;
begin
  write('Inserisci il primo numero = ');
  readln(a);
  write('Inserisci il secondo numero = ');
  readln(b);
  while a >= b do
    begin
      a:=a-b;
      quo:=quo + 1
    end;
  writeln;
  writeln('quoziente = ', quo);
  writeln('resto = ', res);
  readln;
end.

Analizziamo ora il codice: