Cosa stampa il seguente programma?
Program cosa(Input, Output); Type vett = Array[0..10] Of Integer; Var a, b, i : Integer; arr1, arr2: vett; Function funzione(arr: vett; dim: Integer): Integer; Var i, t: Integer; Begin i:=0; t:=0; If((dim Mod 2) = 1) Then While(i < dim) Do Begin t:=arr[i]; arr[i]:=arr[dim-i-1]; arr[dim-i-1]:=t; i:=i+1; End Else While(i < (dim Div 2)) Do Begin t:=arr[i]; arr[i]:=arr[dim-i-1]; arr[dim-i-1]:=t; i:=i+1; End; funzione:=arr[0]; End; Begin For i:=0 to 9 Do arr1[i]:=i+1; For i:=0 to 10 Do arr2[i]:=i+1; a:=funzione(arr1, 10); b:=funzione(arr2, 11); Writeln('a=', a, ',b=', b); End.
Risposte:
- a=10, b=1
- a=1, b=1
- a=10, b=11#
- a=1, b=11.