Форум программистов, компьютерный форум, киберфорум
Наши страницы

Python

Войти
Регистрация
Восстановить пароль
 
Искорка Яркая
0 / 0 / 0
Регистрация: 26.09.2016
Сообщений: 29
#1

Сумма цифр в числе - Python

10.02.2017, 16:48. Просмотров 2140. Ответов 4
Метки нет (Все метки)

Необходимо создать функцию, которая будет возвращать сумму цифр в числе. Причём, если в полученной сумме больше одной цифры, то необходимо повторить операцию, пока сумма не будет состоять из единственной цифры.
Например: 99 = 9+9 = 18 => 18 = 1+8 = 9.

Python
1
2
3
4
5
6
7
8
def digital_root(n):
    n = str(n)
    S = 0
    i = 0
    while i<len(n):
        S = S + int(n[i])
        i+=1
    return S
Эта программа возвращает сумму, независимо от того, сколько в ней цифр.
Как продолжить вычисление до тех пор, пока сумма не будет единственным числом?
Благодарю за ответ.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2017, 16:48
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сумма цифр в числе (Python):

Как посчитать количество цифр в числе? - Python
Для каждого пункта напишите функцию, возвращающую ответ. 0) Дано число, посчитайте количество цифр в числе. Например, 123456 -&gt; 6 ...

Подсчитать количество цифр в заданном числе - Python
Доброго времени суток! Задача: Подсчитать количество цифр в заданном числе Есть нерабочий код def get_number(in_number): ...

Массив: Найти в каждом числе последовательности количество четных и нечетных цифр - Python
Вводится последовательность чисел, 0 - конец последовательности. Найти в каждом числе последовательности количество четных и нечетных цифр...

Найти количество трехзначных чисел, сумма цифр которых равна А - Python
Найти количество трехзначных чисел, сумма цифр которых равна А, а само число заканчивается цифрой В. А и В задаются. не понимаю как в...

Сумма числовых значений цифр, входящих в текст, равна длине текста - Python
Не могу понять как реализировать это приложение. Программа. В заданный непустой текст могут входить только цифры и буквы. Определить,...

Существуют ли два последовательных натуральных числа, сумма цифр каждого из которых делится на 7? - Python
Известна математическая задача: &quot;Существуют ли два последовательных натуральных числа, сумма цифр каждого из которых делится на...

4
Garry Galler
1191 / 934 / 279
Регистрация: 28.10.2013
Сообщений: 2,318
10.02.2017, 17:48 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Python
1
2
3
4
5
number = input()    
while len(number)>1:
    number = str(sum(int(i) for i in number))
 
print(number)
3
dondublon
1318 / 1014 / 120
Регистрация: 17.03.2012
Сообщений: 6,212
Записей в блоге: 5
10.02.2017, 17:55 #3
Или так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def sumsum(n0):
    def digital_root(n):
        n = str(n)
        S = 0
        i = 0
        while i<len(n):
            S = S + int(n[i])
            i+=1
        return S
    s = digital_root(n0)
    if len(str(s)) == 1:
        return s
    else:
        return digital_root(s)
Саму digital_root можно сократить, конечно, но я не заморачивался.
1
Kir-malishev
71 / 71 / 39
Регистрация: 07.08.2016
Сообщений: 173
10.02.2017, 20:06 #4
dondublon, у Вас функция только один раз проверяет длину.
Если ввести, например, 55555555555, выведет 10. А должо вывести 1.
0
philat
111 / 111 / 13
Регистрация: 19.08.2013
Сообщений: 298
10.02.2017, 20:42 #5
Kir-malishev, в 14 строчке должно быть
Python
1
return sumsum(s)
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2017, 20:42
Привет! Вот еще темы с ответами:

Определить сколько цифр в числе n, чему равна сумма его цифр - PHP
Дано натуральное число n. Определить: сколько цифр в числе n, чему равна сумма его цифр.

Рекурсия: количество цифр в числе, сумма цифр и реверс числа - C++
Вот задание: Написать программу, которая запрашивает у пользователя целое число, на экран выводит сколько цифр в числе, их сумму и...

Превышает ли сумма крайних цифр сумму средних цифр в заданном четырехзначном числе - Delphi
Определить превышает ли сумма крайних цифр сумму средних цифр в заданном четырехзначном числе. Помогите пожалуйста, желательно(Но не...

Определить сколько цифр в заданном натуральном числе, и чему равна сумма его цифр - C++
Дано натуральное число n (n&lt;=100). Определить сколько цифр в числе n, чему равна сумма его цифр.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru