Răspuns :
Răspuns:
Explicație:
#include <iostream>
#include <iomanip>
#include <algorithm>
using namespace std;
struct elevi
{
double NotaFinala;
string Nume,Prenume;
};
bool compar(elevi rhs, elevi lhs)
{
if(rhs.NotaFinala == lhs.NotaFinala)
return rhs.Nume > lhs.Nume;
return rhs.NotaFinala < lhs.NotaFinala;
}
elevi v[101];
int n, cer;
double Mg , N1,N2,N3;
double MgFinal;
int main()
{
cin >> n >> cer;
for(int i = 1; i <= n; i++)
{
cin >> v[i].Nume;
cin.get();
cin >> v[i].Prenume;
cin.get();
cin >> N1 >> N2 >> N3;
Mg = (N1 + N2 + N3) / 3;
v[i].NotaFinala = Mg;
MgFinal += Mg;
}
int contor = 0;
for(int i = 1; i <= n; i++)
{
if((v[i].NotaFinala) >=(MgFinal / n))
contor += 1;
}
if(cer == 1)
cout << contor;
else
{
cout << fixed << setprecision(2) << MgFinal / n << endl;
sort(v + 1, v + 1 + n, compar);
for(int i = n ; i >= 1; i--)
cout << v[i].Nume <<" "<<v[i].Prenume <<" "<<v[i].NotaFinala << endl;
}
}
Si eu am patit sa iau 90 de puncte, a fost un joc de declaratii cu double , floant si long double ca sa iau 100 de puncte, ne pune site-ul la incercare :))
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.