Scrieţi un program care să afişeze de câte ori apare o cifră nenulă c în scrierea tuturor numerelor naturale mai mici sau egale cu un număr dat n. Cifra c şi valoarea lui n se citesc de la tastatură. 28
#include <iostream>
using namespace std;
int main() {
int n, c;
cout << „Introduceti cifra c: „;
cin >> c;
cout << „Introduceti numarul n: „;
cin >> n;
int count = 0;
for (int i = 1; i <= n; i++) {
int num = i;
while (num > 0) {
int digit = num % 10;
if (digit == c) {
count++;
break;
}
num /= 10;
}
}
cout << „Cifra ” << c << ” apare de ” << count << ” ori in numerele de la 1 la ” << n << „.” << endl;
return 0;
}
Pentru a rezolva această problemă, putem parcurge toate numerele de la 1 la n și, pentru fiecare număr, putem verifica dacă cifra c apare în scrierea sa.
Pentru a verifica dacă cifra c apare într-un număr, putem extrage cifrele numărului folosind operatorul modulo și apoi împărțind numărul la 10 pentru a trece la următoarea cifră. Odată ce am obținut o cifră, o comparăm cu cifra c și, dacă se potrivește, creștem un contor.