• Предмет: Информатика
  • Автор: zokirovnazar566
  • Вопрос задан 7 лет назад

программа, которая возвращает сумму всех делителей числа. Python

Ответы

Ответ дал: swxs
0

Объяснение:

def sum_div(number):

divisors = [1]

for i in range(2, number):

if (number % i)==0:

divisors.append(i)

return sum(divisors)

print(sum_div(8))

print(sum_div(12))

Ответ дал: valeron9814
1

Ответ:

Не совсем правильно дан предыдущий ответ. В нем сума делителей будет БЕЗ самого числа. Т.е любое число делится само на себя, его же тоже нужно считать? 6ю строчку можно удалить (сделал чтобы было наглядно видно что в список записывается).

В range надо перебирать от 1 до number+1 потому что если перебирать до  number оно само число number не будет учитывать.

Объяснение:

def sum_div(number):

   divisors = []

   for i in range(1, number+1):

       if (number % i)==0:

           divisors.append(i)

   print(divisors)

   return sum(divisors)

print(sum_div(4))

Вас заинтересует