• Найти такие двузначные числа которые в сумме с числом записанным в обратном порядке дают полный квадрат
    Например 29+92=121 корень121=11
    НА ПИТОНЕ ЖЕЛАТЕЛЬНО С ПОЯСНЕНИЯМИ

Ответы 1

  • 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 — меняем местами десятки и единицы (например, 29 превращаем в 92):

    • i % 10 — получаем десятки
    • i // 10 — получаем единицы

    Потом добавляем к полученному наше исходное число (например, 29 превращается в 92 и к нему прибавляется 29). Из этой суммы находим квадрат с помощью функции sqrt() из модуля math (мы его подключили первой строкой import math). Чтобы проверить, полный ли квадрат получается из этого числа, нужно проверить, имеет ли остаток полученный корень. Я нашел остаток от деления с помощью конструкции root % 1. Если остаток равен нулю, то квадрат полный, следовательно выводим число в консоль с помощью функции print().

  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years