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



Sa se construiască o funcție ce are ca parametru un nr întreg și întoarce ca rezultat suma cifrelor distincte din număr (n=1,2,1,2,5-> s=1+2+5)


se citeste un sir de n numere sa se construiasca un al doilea sir ce va contine suma cifrelor fistincte pt fiecare nr din primul sir doar daca suma este un nr impar.

Răspunsuri la întrebare

Răspuns de crow9920
0

Program C++:

#include <iostream>

using namespace std;

int sumaCifDist(int n) {

   int cifre[10] = {0};

   while (n != 0) {

       cifre[n % 10]++;

       n /= 10;

   }

   int suma = 0;

   for (int i = 0; i < 10; i++)

       if (cifre[i])

           suma += i;

   return suma;

}

int main() {

   int n;

   int sir1[1000], sir2[1000];

   cin >> n;

   int cnt = 0;

   for (int i = 0; i < n; i++) {

       cin >> sir1[i];

       if (sumaCifDist(sir1[i]) % 2 == 1) {

           sir2[cnt] = sumaCifDist(sir1[i]);

           cnt++;

       }

   }

   for (int i = 0; i < cnt; i++)

       cout << sir2[i] << " ";

   return 0;

}

Alte întrebări interesante