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

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

aggeeva
Галстян874
sespiridonov
Павловна897
goodsled
alex13izmailov
Чунихина1586
goldservicepro
cristiansirbu9974
sdvigov
Tomilova1686
fedchenkoofficial
egoryuzbashev
Руслан1360
tushina2020