Модуль: (Python) Оператор цикла с условием - WHILE


Задача

6/21

Цифры числа

Теория Нажмите, чтобы прочитать/скрыть

Задача

Необходимо ввести число (пусть оно будет меньше 3 000 000), и определить количество цифр в нем.
 
Идея решения
Нам необходимо просто последовательно отсекать от числа последнюю цифру (сделать это можно, уменьшив число в 10 раз, применяя целочисленное деление на 10), при этом каждый раз необходимо увеличить счетчик. 

В итоге, после того как мы отсечём все цифры числа, в счетчике получим их количество.

Этот алгоритм можно сформулировать так:
Пока число не равно нулю, уменьшать его в 10 раз и увеличивать каждый раз счетчик на 1.
 
число (n) счетчик
123 0
12 1
1 2
0 3

Программа будет выглядеть следующим образом.
n = int(input())
count = 0
while n != 0:
    count += 1
    n = n // 10
print("Number -", n, "contains", count, "digits")

Данную программу нужно знать наизусть, т.к. на ее основе решаются многие другие задачи, связанные с обработкой цифр числа.

Задача

Запустите программу. 

Посмотрите на результат ее работы.
Все ли нормально в выходной фразе? Подумайте, как можно исправить данный недочет.