Informatică, întrebare adresată de snowycat, 8 ani în urmă

Cerinţa
Se dă un număr natural n, apoi n numere naturale. Să se calculeze suma obținută prin adunarea primei cifre a celor n numere citite.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi cele n numere naturale, separate prin spaţii.

Date de ieşire
Programul afișează pe ecran numărul S, reprezentând suma obținută prin adunarea primei cifre a celor n numere citite.

Restricţii şi precizări
0 < n < 1000
cele n numere citite vor fi mai mici decât 2000000
1. Exemplu:

Intrare

5
100 212 3 45 5021
Ieșire

15



va rog fara functia for deoarece profesoara mea vrea cu while

Răspunsuri la întrebare

Răspuns de Daniel4761
2

#include <iostream>

using namespace std;

int main()

{

unsigned int n, nr, i, s=0;

cin>>n;

for(i=1;i<=n;i++){

 cin>>nr;

 while(nr>9) nr=nr/10;

 s=s+nr;

}

cout<<endl;

cout<<s;

return 0;

}



snowycat: iti multumesc mult, dar ai putea sa inlocuiesti functia for cu while te rog?
Daniel4761: aa da, scuze
Daniel4761: #include < iostream >
using namespace std;
int main()
{
unsigned int n, nr, i, s=0;
cin >> n;
i=1;
while(i<=n){
cin >> nr;
while(nr > 9) nr = nr / 10;
s=s+nr;
i++;
}
cout << endl;
cout << s;
return 0;
}
snowycat: multumesc mult :)))
Daniel4761: Cu placere! ;)
Alte întrebări interesante