Răspuns :
Răspuns:
#include <iostream>
using namespace std;
int num, inv, cif, suma, med;
int main()
{
cout << "num="; cin >> num;
while (num)
{
cif=num%10;
inv=inv*10+cif;
num=num/10;
}
cout << inv << endl;
int nrcif=0;
while (inv)
{
cif=inv%10;
++nrcif;
suma=suma+cif;
inv=inv/10;
}
med=suma/nrcif;
cout<< med;
return 0;
}
Explicație:
am afisat si inversul (hotărăşti tu dacă trebuie...)
cu nrcif am numărat câte cifre are inversul (nu coincide numărul de cifre a numărului introdus cu nr de cifre a inversului pt. a afla media aritmetică a cifrelor inversului. De exemplu se introduce un număr de 5 cifre 30400, atunci inversul va fi 403 şi deci are 3 cifre
Răspuns:
#include <iostream>
#include <cstdlib>
using namespace std;
int main(){
int n,inv=0,s=0, nrcif=0;
div_t div_struct;
cin >> n;
while((div_struct = div(n,10), div_struct.rem)==0)n=div_struct.quot;// scapam de 0-urile de la sfarsitul numarului
while(n){
div_struct = div(n, 10);
s += div_struct.rem;
nrcif++;
inv = 10*inv + div_struct.rem;
n = div_struct.quot;
}
cout << inv << ' ';
if(nrcif != 0)cout << s/nrcif;
else cout << "NaN";
}
Explicație:
Se scot 0-urile de la sfarsit si apoi se calculeaza suma cifrelor si inversul numerului in acelasi timp.
Structura div_t este o metoda de a retine catul si restul unei impartiri: catul = membrul quot al structurii si restul = membrul rem al structurii.
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!