Cerința
Să se scrie o funcţie care primeşte ca argumente două numere naturale a şi b şi returnează numărul de elemente din intervalul [a,b] care au cifra de control egală cu a.
Cifra de control a unui număr se obţine efectuând suma cifrelor sale, apoi suma cifrelor acestei sume etc. până se obţine o sumă formată dintr-o singură cifră. De exemplu, cifra de control a numărului 645 este 6. (6+4+5=15, 1+5=6)
Restricţii şi precizări
numele funcţiei va fi sum_cifra_control
funcţia va avea doi parametri, a şi b, în această ordine
1 ≤ a ≤ 9
a < b ≤ 107
Răspunsuri la întrebare
Răspuns de
2
#include <iostream>
using namespace std;
int sum_cifra_control(int a, int b)
{
int s, control, num, contor=0;
for (num=a; num<=b; ++num)
{
control=num;
while (control>9)
{
s=0;
while (control>0)
{
s=s+control%10;
control=control/10;
}
control=s;
}
if (control==a) ++contor;
}
return contor;
}
int main()
{
int a, b;
cout << "a= "; cin >> a;
cout << "b= "; cin >> b;
cout <<" exista " << sum_cifra_control(a,b) << " numere din intervalul [a,b] care au cifra de control egala cu a";
}
Alte întrebări interesante
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Chimie,
9 ani în urmă