Cerinţa
Scrieți definiția completă a subprogramului recursiv P
care primeşte prin intermediul parametrului n
un număr natural nenul (n≤100
), iar prin intermediul parametrului x
un tablou unidimensional cu n
componente întregi, de maximum opt cifre fiecare.
Subprogramul furnizează prin intermediul parametrului mini
valoarea minimă din tabloul x
, prin intermediul parametrului maxi
valoarea maximă din x
, iar prin intermediul parametrului sum
suma elementelor din tabloul x.
Restricţii şi precizări
0 < n <= 100
- numele subprogramului cerut este
P
- parametrii sunt, în această ordine:
x
,n
,mini
,maxi
,sum
- elementele vectorului
x
sunt indexate de a zero
Se recomandă realizarea unei soluții recursive.
Exemplu
Dacă n=6
și x= (12, 7, 6, 3, 8, 5)
, după apel mini=3
, maxi=12
și sum=41
.
Important
Soluţia propusă va conţine doar definiţia subprogramului cerut. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
void P(int a[] , int n, int &min , int &max , int &sum) { if(n == 1) max=min=sum=a[0]; else { P(a , n-1 , min , max , sum); if(a[n-1]<min) min=a[n-1]; if(a[n-1]>max) max=a[n-1]; sum+=a[n-1]; } }