👤

Cerinţa

Se citește un număr natural n. Să se determine suma cifrelor aflate pe poziții impare. Numărarea pozițiilor în numărul dat se face începând de la prima cifră.

Date de intrare

Programul citește de la tastatură numărul n

Date de ieşire

Programul afișează pe ecran numărul S, reprezentând suma cerută.

Restricţii şi precizări

1 ≤ n ≤ 1.000.000.000


Exemplu

Date de intrare
9712654
Date de ieșire
20

Explicație

S-au adunat cifrele 9 1 6 4.


Pe poza am programul incercat doar ca imi da doar 40 de puncte, de ce? ce mai trebuie facut, as vrea ajutor ​


CerinţaSe Citește Un Număr Natural N Să Se Determine Suma Cifrelor Aflate Pe Poziții Impare Numărarea Pozițiilor În Numărul Dat Se Face Începând De La Prima Cif class=

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int n, nrcif=0, s1=0, s2=0, S, cif;

   cin >> n;

   while (n)

   {

       cif=n%10; ++nrcif; n/=10;

       if (nrcif%2) s1+=cif;

       else s2+=cif;

   }

   if (nrcif%2) S=s1;

   else S=s2;

   cout << S << endl;

   return 0;

}

Explicație:

trebuie să faci două sume şi tot odată să contorizezi cîte cifre are numărul

Dacă n=2356, atunci s1=6+3, s2=5+2. Deoarece numărul de cifre =4 vom considera ca rezultat s2