(number /= 10) != 0
На самом деле это 3 шага. Это ...
- Вычисляет
number / 10
- Назначает это значение
number
- Проверяет, не равно ли это значение
0
Итак, в ответ на ваш вопрос: «почему в этой функции они не пишут number / 10 != 0
», давайте пройдемся по тому, что это делает:
- Вычисляет
number / 10
- Проверяет, не равно ли это значение
0
Видите ли вы разницу между ними?
Если вы все еще не уверены, почему это важно,поместите оператор вывода в цикл while, который покажет number
и digitsSoFar
, и попытайтесь запустить эту функцию как в том виде, в котором она написана, так и в предложенной вами версии.