Cerinţa
Scrieţi definiția completă a subprogramului C++ count
care are 2
parametri: a
, prin care primeşte un tablou unidimensional cu maximum 100
de numere reale mai mici decât 1000
și n
, numărul efectiv de elemente ale tabloului.
Subprogramul returnează numărul de elemente din tablou care sunt mai mari sau cel puțin egale cu media aritmetică a tuturor elementelor din tablou.
Restricţii şi precizări
0 < n ≤ 100
- numele subprogramului cerut este
count
- parametrii sunt, în această ordine:
a
,n
- elementele vectorului
a
sunt indexate de la zero - pentru datele reale se va folosi tipul
double
. Utilizarea altor tipuri poate duce la erori de compilare.
Exemplu
Dacă n=6
și a= (12, 7.5, 6.5, 3, 8.5, 7.5)
subprogramul va returna valoarea 4
, deoarece media aritmetică este 7.5
, iar în tablou sunt 4
elemente cel mult egale cu această valoare.
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.
int count(double a[], int n){ double sum = 0; for(int i = 0; i < n; ++i) sum+=a[i]; sum = (double)sum / n; int cnt = 0; for(int i = 0; i < n; ++i) if(a[i] >= sum) cnt++; return cnt; }