Отыскать такие двузначные числа которые в сумме с числом записанным в
Отыскать такие двузначные числа которые в сумме с числом записанным в обратном порядке дают полный квадрат
Например 29+92=121 корень121=11
НА ПИТОНЕ Желанно С ПОЯСНЕНИЯМИ
import math
for i in range(10, 99 + 1):
if math.sqrt(i % 10 * 10 + i // 10 + i) % 1 == 0:
print(i)
Объяснения:
Перебираем с поддержкою цикла for перечень всех двузначных чисел, сделанный с поддержкою функции range(10, 99 + 1).
i % 10 * 10 + i // 10 меняем местами 10-ки и единицы (например, 29 превращаем в 92):
- i % 10 получаем 10-ки
- i // 10 получаем единицы
Потом прибавляем к приобретенному наше начальное число (к примеру, 29 преобразуется в 92 и к нему прибавляется 29). Из этой суммы находим квадрат с подмогою функции sqrt() из модуля math (мы его подключили первой строкой import math). Чтоб проверить, полный ли квадрат получается из этого числа, нужно проверить, имеет ли остаток полученный корень. Я отыскал остаток от деления с поддержкою конструкции root % 1. Если остаток равен нулю, то квадрат полный, как следует выводим число в консоль с помощью функции print().
-
Вопросы ответы
Статьи
Информатика
Статьи
Разные вопросы.
Математика.
Физика.
Геометрия.
Разные вопросы.
Обществознание.
Математика.
Химия.
Русский язык.
Разные вопросы.