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()
Объяснение:
На случай, если сайт сломает табуляции в коде (А он их сломает), ниже представлен скриншот оригинала кода. Программа протестирована.
Объяснение:
При обращении к ячейке можно использовать описанные ранее ВЗ, А1:G9 и т. д. Такая адресация называется относительной. При ее использовании в формулахExcelзапоминает расположение относительно текущей ячейки. Так, например, когда вы вводите формулу =B1+B2 в ячейку В4, тоExcelинтерпретирует формулу как "прибавить содержимое ячейки, расположенной тремя рядами выше, к содержимому ячейки, расположенной двумя рядами выше".
Если вы скопировали формулу =В1+В2 из ячейки В4 в С4, Excelтакже интерпретирует формулу как «прибавить содержимое ячейки, расположенной тремя рядами выше, к содержимому ячейки двумя рядами выше». Таким образом, формула в ячейке С 4 примет вид =С1+С2.
Если при копировании формул вы пожелаете сохранить ссылку на конкретную ячейку или область, то вам необходимо воспользоваться абсолютной адресацией. Для ее задания необходимо перед именем столбца и перед номером строки ввести символ $. Например: $В$4 или $C$2:$F$48 и т. д.
Смешанная адресация. Символ $ ставится только там, где он необходим. Например: В$4 или $С2. Тогда при копировании один параметр адреса изменяется. а другой — нет.