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

Se citește un număr n. Să se afișeze produsul cifrelor pare distincte din
scrierea acestuia, sau 0 dacă nu există astfel de cifre.
Ex: dacă n = 122644, atunci se va afișa 48


PaulFlo148: ce clasa esti ca sa stiu ce pot folosii

Răspunsuri la întrebare

Răspuns de PaulFlo148
1

Răspuns:

#include <iostream>

using namespace std;

int n,v[10],i,s;

int main()

{

   cin>>n;

   s=1;

   while(n!=0)

   {

       v[n%10]++;

       n=n/10;

   }

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

       if(v[i]!=0)

           s=s*i;

   cout<<s;

   return 0;

}

Explicație:

citeste n, face vector de frecventa cu cifrele lui si dupa parcurge vectorul de frecventa din 2 in 2 ca sa mearga doar prin numele pare


laxitiy728: poti atasa si o rezolvare fara vectori, daca se poate, te rog?
laxitiy728: a si inca ceva, daca nu exista astfel de numere trebuie sa se afiseze 1, nu 0, poti sa mi spui ce trebuie sa adaug?
PaulFlo148: nu sunt sigur cum poti sa o faci fara vectori ca sa nu aduni de mai multe ori aceasi cifra
PaulFlo148: ca sa scrie 1 in cazul in care nu exista cred ca daja apare 1
PaulFlo148: daca numarul pe care il verifici are si 0 in scrierea lui atunci rezultatul corect e 0 daca nu ai de loc pare ar trebuii sa fie 1
Alte întrebări interesante