3.Se citeşte numărul natural n şi apoi se citesc n valori naturale. Să se determine cea mai
mică valoare din cele n date, numărul de apariții al acesteia, precum și media aritmetică
a tuturor valorilor citite.
a) Precizați ce se va afişa dacă n=4 și numerele citite sunt 4, 6, 4, 10.
b) Propuneți un set de date de intrare pentru n=6 care valoarea afişată să fie 5 3 6.
c) Identificați datele de intrare, de ieşire şi de manevră pentru problema de mai sus.
d) Scrieți algoritmul de rezolvare pentru problema enunţată (în pseudocod/schemă logică/
program).


Răspuns :

Răspuns:

a) 4 2 6

b) 5, 10, 5, 7, 5, 4

c) date de intrare: n, x (pt fiecare dintre cele n numere citite)

date de iesire: min (valoarea minima), nrap(nr de aparitii), media( media aritmetica)

d)

int main()

{

int n, x, min, nrap, s, copn; // declar variabilele

float media; //

cin>>n; // il citesc pe n

copn=n; //initializez variabila copn (copia lui n) cu valoarea lui n

min=10000; //initializez variabila min cu o valoare foarte mare

s=0; // pornesc cu suma elementelor de la 0, si o maresc dupa citirea fiecarui element

while ( copn !=0)

{

cin>>x; // citesc pe rand cele n valori si fac operatiile pt fiecare in parte

if( min < x )

{min=x; // determin minimul

nrap=1; } // pornesc suma de la 1

else

if( min == x)

{ nrap=nrap+1; } // creste nr aparitiilor, daca intalnesc minimul de mai multe ori

s=s+x;

copn= copn-1;

}

media= s.0/n; //calculez media

cout<<min<<" "<<nrap<<" "<<media<<endl; //afisez valorile cerute, cu spatiu intre ele

return 0;

}