info4632
?>

Разложить числа 213, 56, 1023 на слагаемые, каждое из которых - степень числа 2.

Информатика

Ответы

seregina19706867

def check_perfect(number:int, dividers = []):

for i in range(1, number):

 if number%i == 0:

  dividers.append(i)

if sum(dividers) == number:

 return 1

def get_div(num, div = []):

for i in range(1, num):

 if num%i == 0:

  div.append(i)

return div

def main():

number = int(input())

if check_perfect(number):

 print(' '.join(str(num) for num in get_div(number)))

else:

 print(0)

if __name__ == '__main__':

main()

Объяснение:

На случай, если сайт сломает табуляции в коде (А он их сломает), ниже представлен скриншот оригинала кода. Программа протестирована.


совершенным называется число, равное сумме всех своих делителей, меньших его самого (например, число
konnovakat1

def check_perfect(number:int, dividers = []):

for i in range(1, number):

 if number%i == 0:

  dividers.append(i)

if sum(dividers) == number:

 return 1

def get_div(num, div = []):

for i in range(1, num):

 if num%i == 0:

  div.append(i)

return div

def main():

number = int(input())

if check_perfect(number):

 print(' '.join(str(num) for num in get_div(number)))

else:

 print(0)

if __name__ == '__main__':

main()

Объяснение:

На случай, если сайт сломает табуляции в коде (А он их сломает), ниже представлен скриншот оригинала кода. Программа протестирована.


совершенным называется число, равное сумме всех своих делителей, меньших его самого (например, число

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Разложить числа 213, 56, 1023 на слагаемые, каждое из которых - степень числа 2.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

shturman-765255
helenavalenti2846
Климова1317
Aleksandrovich1669
sergeymartyn56
bellatrixstudio
Юлия1972
samogon-mozhaisk
qwert28027170
mrropevvv
iracaenko153
bel1-79
banketvoshod
Olesya-elena1525
Ivanovich-A.V
▲