Informatică, întrebare adresată de infomatrix, 9 ani în urmă

VA ROG SA MA AJUTATI !!! AM NEVOIE DE UN COD IN C++ SI EXPLICATII
Cerinţa
Se dă un vector cu n numere naturale. Să se determine câte dintre elemente au valoarea strict mai mare decât media aritmetică a elementelor vectorului.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, reprezentând elementele vectorului.

Date de ieşire
Programul afișează pe ecran numărul C, reprezentând valoarea cerută.

Restricţii şi precizări
1 ≤ n ≤ 200
elementele vectorului vor fi cuprinse între 0 și 1000



Exemplu
Intrare

5
5 0 2 1 4
Ieșire

2
Explicație
Media aritmetică a elementelor este 2.4. În vector sunt 2 elemente cu valoarea strict mai mare decât 2.4: 5 4

Răspunsuri la întrebare

Răspuns de Razzvy
3
#include <iostream>
using namespace std;

int main()
{
   int v[200], n, s = 0, ma, cnt = 0;

   cin>>n;
   for(int i = 0; i < n; ++i)       //Citirea vectorului
   {
      cin>>v[i];
      s += v[i]; //Media aritmetica este suma impartita la numarul de elemente, asa ca vom aduna fiecare element al vectorului intr-o variabila
   }
   ma = s / n; //Media aritmetica a celor n elemente din vector (va fi un numar intreg)
  
   for(int i = 0; i < n; ++i)    //Parcurgem din nou vectorul ca sa vedem cate                                                //elemente sunt mai mari decat media aritmetica
   {
       if(v[i] > ma) cnt++;     //cnt numara elementele mai mari
   } 
   cout<<cnt;
   
   return 0;
}
Răspuns de express
2
#include <iostream>
using namespace std;
int i, nr;
float ma, v[205], s, n;
int main()
{
    cin >> n;
    for(i = 1; i <= n; i ++)
     {
         cin >> v[i];
         s = s + v[i];
     }
    ma = s / n;
    for(i = 1; i <= n; i ++)
     if(v[i] > ma) nr ++;
    cout << nr;
    return 0;
}

Alte întrebări interesante