2005/06 – Fase scolastica – 02

Si consideri la seguente funzione:

Function funzione(): Integer;
Var
   contatore: Integer;
   sum      : Integer;
Begin
   contatore:=0;
   sum      :=0;
   While(contatore <= 4) Do
      Begin
         contatore:=contatore+1;
         sum      :=sum+contatore;
      End;
   funzione:=sum;
End;

Quale valore restituisce la funzione?

Risposte:

  1. 10
  2. 15
  3. 16
  4. Nessuna delle risposte precedenti.

Soluzione: b.


Soluzione

Il ciclo while viene eseguito 5 volte (contatore che va da 0 a 4 compreso).
La variabile contatore viene incrementata all’inizio: quindi nel ciclo stesso il contatore assumerà i valori da 1 a 5.
Nel ciclo si calcola chiaramente la sommatoria di tali valori, che vale 15.
La funzione restituisce quindi il valore 15.