Сумма цифр числа
Сумма цифр числа — это результат сложения всех его десятичных цифр. Чтобы её найти, число последовательно делят на 10: остаток является очередной цифрой, а целая часть становится укороченным числом.
Алгоритм выделения цифр
Пусть \(n\) — неотрицательное целое число, а \(s\) — накопленная сумма. Пока \(n>0\), последняя цифра находится выражением \(n\bmod 10\). Затем эту цифру прибавляют к \(s\), а последнюю цифру удаляют целочисленным делением \(n\) на 10. Такой способ является частным случаем разложения числа на цифры и работает с последовательностью цифр справа налево.
Сначала \(s=0\). Получаем \(472\bmod 10=2\): сумма становится 2, число — 47. Затем выделяются 7 и 4: \(s=2+7+4=13\). Поэтому сумма цифр числа 472 равна 13.
n = int(input()) s = 0 while n > 0: s += n % 10 n //= 10 print(s)
Остаток от деления \(n\bmod 10\) выделяет последнюю цифру, а \(n\mathbin{//}10\) удаляет её. Если перепутать эти операции, цифры не будут обработаны правильно. Для числа 0 сумма цифр обычно считается равной 0; это нужно явно учесть в программе, если используется цикл с условием \(n>0\).
Чему равна сумма цифр числа 305?
Главное
- Последняя цифра числа находится как \(n\bmod 10\).
- После обработки цифры число уменьшают целочисленным делением \(n\mathbin{//}10\).
- Сумма цифр накапливается в отдельной переменной; для нулевого числа результат равен 0.