2004/05 – Fase scolastica – 06

Si consideri la seguente funzione:

Function trova(bersaglio: Integer; valori: sequenza): Integer;
Var
   contatore: Integer;
Begin
   contatore:=1;
   While valori[contatore] <> bersaglio Do
      Begin
         contatore:=contatore+1;
      End;
   trova:=contatore-1;
End;

Essa serve a determinare l’indice in cui si trova un certo valore (rappresentato dal parametro bersaglio) in un vettore (rappresentato dal parametro valori).

La funzione, però, funziona sempre solo se vale un vincolo specifico rispetto ai dati in ingresso, quale?