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*
Комментарий*

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

tanu0618
expozition
aifbon
sidorov9
shabunina17
Yurok9872
АлексейГагиковна1774
Daulyatyanov1266
Nurislamovna1543
ivanjeka87
Mikhailovich_Viktoriya
sergeymartyn56
knigi21212
Darya Aleksei1173
mashiga2632