Se citesc numere naturale până când se introduc două
numere consecutive egale. Determinați și afișați suma tuturor
numerelor citite.
exemplu
date.in Date de ieșire
2, 1, 5, 10, 3, 0, 4, 4, 3 21
2, 1, 5, 7, 7, 3, 4 8
Problema 2. Se dă un număr natural n. Determinați și afișați produsul
cifrelor impare ale numărului natural n.
exemple
date.in Date de ieșire
3251 15
426 Nu sunt cifre impare
ERA CEVA CU UN TABEL CEL MAI MARE DIVIZOR COMUN
CLASA 6
Răspunsuri la întrebare
Răspuns:
La cerința 1 vreau să îți spun că nu există două numere consecutive egale, iar la 2 nu știu de ce, ca date de intrare, apar două numere, când cerința zice de doar unul. Totuși, voi respecta și reformula a doua cerință.
Trebuie să se calculeze și să se afișeze produsul cifrelor impare al unui număr natural n.
Pentru a determina produsul cifrelor impare, trebuie să scriem o variabilă (o poți numi cum dorești tu, eu o voi nota P) pe care să o inițializăm cu 1. Dacă o inițializăm cu 0, orice număr înmulțit cu 0 ne dă 0, de aceea se numerotează cu 1.
Mai departe, scriem o instrucțiune repetitivă de tip while (este cea mai comodă și, totodată, cea mai simplă). Atât timp cât numărul meu mai are cifre, le extrag succesiv pe cele impare și le înmulțesc.
Secvența de program o ai mai jos:
while(n)
{
if (n % 10 % 2 != 0)
P=P * (n % 10);
n=n/10;
}