В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
sirkovake
sirkovake
07.04.2020 20:20 •  Информатика

натуральное число называется числом армстронга, если сумма цифр числа, возведенных в k -ю степень (где k – количество цифр в числе) равна самому числу. например,

153 = 1 ^3 + 5^ 3 + 3 ^3 .

напишите программу, которая находит все числа армстронга на отрезке [ a , b ] .

входные данные

входная строка содержит два натуральных числа – значения a и b , разделённых пробелами. гарантируется, что a ≤ b .

выходные данные

программа должна вывести в одну строчку все числа армстронга на отрезке [ a , b ] , разделив их пробелами. если таких чисел нет, программа должна вывести число -1.

примеры

входные данные

100 400

выходные данные

153 370 371

входные данные

500 600

выходные данные

-1

п.с. питон

Показать ответ
Ответ:
lilulurens
lilulurens
07.10.2020 18:17

a, b = map(int, input().split())

answer = []

for i in range(a, b):

num = str(i)

length = len(num)

sum = 0

for y in num:

sum += int(y)**length

if sum == int(i):

answer.append(str(i))

if len(answer) == 0:

answer.append('-1')

print(' '.join(answer))

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота