workshophub563992

Two approaches to the sum of digits

Nov 13th, 2026
8
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. Two approaches to the sum of digits
  2.  
  3. Разберём решение и посмотрим, как та же задача решается другим способом.
  4.  
  5. Задача
  6.  
  7. Найти сумму цифр натурального числа n, например для 1234 ответ 1 + 2 + 3 + 4 = 10.
  8.  
  9. Решение
  10.  
  11. ``python
  12. def digit_sum(n: int) -> int:
  13. total = 0
  14. while n > 0:
  15. total += n % 10 # берём последнюю цифру
  16. n //= 10 # отбрасываем её
  17. return total
  18.  
  19. print(digit_sum(1234))
  20. `
  21.  
  22. Как это работает
  23.  
  24. Операция n % 10 выделяет последнюю цифру, а целочисленное деление n //= 10 убирает её. Цикл продолжается, пока число не станет нулём.
  25.  
  26. Пример работы
  27.  
  28. `text
  29. 10
  30. ``
  31.  
  32. Сложность
  33.  
  34. O(log n) по времени — по числу цифр, O(1) по памяти.
  35.  
  36. Альтернативный подход
  37.  
  38. Ту же задачу часто решают иначе: например, через рекурсию вместо цикла или через стандартную библиотеку вместо ручной реализации. Альтернатива обычно короче, но первое «ручное» решение лучше показывает механику работы алгоритма. Полезно написать оба и сравнить на одинаковых тестах.
  39.  
  40. Оба подхода рабочие; важно понимать цену каждого, а не копировать первый попавшийся.
  41.  
  42. View Full Gallery → https://go.cbrop.com/prse
  43.  
  44. Related:
  45.  
  46. https://paste2.org/bfY7XbPx
  47. https://pastebin.com/xxbk1rUm
  48. https://mega.nz/file/fopmhDTZ#IcjjLx8iUC46Q1QLPYzXk_SxCnr4dlIg0_Rya8MV6Lw
  49. https://radicle.network/nodes/seed.pipapo.org/rad%3Az3T6sGtVdV55uCXwf71VAbaZqQ1bt/issues/d6b860339ceb990d2adbbbde717f4b75bfbf221d
  50. https://mycommunitycalendars.com/wp-content/uploads/event-manager-uploads/event_banner/2026/11/mirbezumia-105d45.pdf
  51.  
Add Comment
Please, Sign In to add comment