#include
using namespace std;
#include
void main() {
system("chcp 1251"); // кирилизиране
system("cls"); // чистене на конзолата от досадното съобщение
int n, i, count=0; // n - число, count - брой цифри
cout > n;
while (n != 0) {
int b = n % 10; // b държи последната цифра на число
count++; // увеличаваме броя на цифрите, като при първото изпълнение, то е 0
n /= 10; // махаме последната цифра на числото; n = n/10 е същото
}
cout
Колега това намерих набързо в учебника:
Делението с частно и остатък може да се използва за намиране на броя на цифрите на
дадено естествено число n. Алгоритъмът е следният: Последователно делим (докато е възможно)
целочислено n на 10. Очевидно, при всяко такова деление цифрите на n намаляват с една. Така,
броят на цифрите на n се определя от броя на деленията, които извършваме, докато n стане равно на нула:
#include
unsigned n = 4242;
int main(void) {
unsigned digits;
for (digits = 0; n > 0; n /= 10, digits++);
printf("Броят на цифрите на %u е %un", n, digits);
return 0;
}
Дано е полезно!
1
За да отговорите, трябва да сте влезли в профила си.