§ ПМ Рекурсивный подсчёт цифр
Самостоятельно определите функцию K(n), которая возвращает количество цифр заданного натурального числа n.
Решение
Воспользуемся способом из примера : при делении натурального числа на нацело его последняя цифра отбрасывается. Если число меньше , в нём ровно одна цифра; это граничное условие, при котором рекурсивные вызовы прекращаются.
Если , число цифр складывается из одной отброшенной последней цифры и числа цифр в . Поэтому определим:
при ;
при .
Например, для последовательно получаем , , , и . Подставляем результаты в обратном порядке: , , , . При каждом делении число уменьшается, поэтому вызовы обязательно дойдут до однозначного числа.