Salut, imi poate spune cineva de ce iau 0 puncte la problema asta si sa-mi dea alt cod daca al meu nu e bun?
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
Exemplu
sum_cifra_control(2, 100) = 11
Codul meu :
int sum_cifra_control(int a, long long b)
{
int i = a, s = 0, nr = 0;
while(i < b)
{
int u = i;
while(u >= 10)
{
nr = 0;
while(u > 0)
{
int c = u % 10;
nr += c;
u /= 10;
}
u = nr;
}
if(nr == a) s++;
Vă mulțumim că ați accesat site-ul nostru dedicat Informatică. Sperăm că informațiile furnizate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag să reveniți și nu uitați să ne salvați la favorite!