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

#2678 FormNr

Cerința
Se dă un șir de caractere ce conține litere, cifre, semne de punctuație, spații și alte simboluri ASCII. Cifrele din șir formează numere, scrise în baza 10. Să se determine suma acestor numere.

Date de intrare
Programul citește de la tastatură șirul dat.

Date de ieșire
Programul va afișa pe ecran suma calculată.

Restricții și precizări
șirul conține maxim 255 de caractere;
cifrele sunt de la 0 la 9.



Exemplu
Intrare

an2a are 52 de creioane si cu 7 mai multe pixuri.
Ieșire

61
Explicație
2+52+7=61

Răspunsuri la întrebare

Răspuns de boiustef
9

#include <iostream>

#include <cstring>

using namespace std;

char s[256];

long long suma=0, termen, i, lung;

int main()

{

   cin.getline(s, 256);

   lung=strlen(s);

   for (i=0; i<lung; ++i)

   {

       if (isdigit(s[i]))

       {

           termen=termen*10+(s[i]-'0');

       }

       else

       {

           suma=suma+termen; termen=0;

       }

   }

   cout << suma;

   return 0;

}


Alte întrebări interesante