Si consideri il seguente frammento di programma.
int calcola(int vett[], int n) { int i, y, x; y=0; x=vett[0]; for(i=0; i < n-1; i++) if(x < vett[i+1]) { y=vett[i+1]-x+y; x=vett[i+1]; } if(x-y > vett[i+1]) y=x-vett[i+1]; return y; }Dire che cosa restituisce la funzione “calcola” assumendo che venga invocata passando un vettore di lunghezza n con n maggiore di 2.
Soluzione: La differenza fra l’elemento massimo e l’elemento minimo presenti nel vettore.
Il comportamento della funzione è incomprensibile…