👤

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
Explicație
S-au citit 5 numere. Trebuie adunate prima cifra a fiecarui numar, iar suma lor este 1+2+3+4+5=15.


PROGRAMUL MEU ESTE ACESTA:
#include
using namespace std;
int main()
{
int n,x,i,s=0;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>x;
while(x!=0)
{
x=x/10;
s=s+x;
}
n=n/10;
}
cout< return 0;
}
INSA MIE LA COMPILARE IMI DA 11 NU 15 CUM AR TREB SA DEA PT EXEMPLUT DE MAI SUS.
VA ROG,MA PUTETI AJUTA??


Răspuns :

Uite aici un program care functioneaza (e testat de mine):

#include <iostream>

using namespace std;

int main()
{
    int n, s = 0, x, i;
    cin >> n;
  
    for(i = 0; i < n; i++)
    {
        cin >> x;
        while(x > 9)
            x /= 10;
        s += x;
    }
    cout << "Suma primelor cifre: " << s << endl;
    return 0;
}