E. Множество всех полных квадратов

Полным квадратом назовём натуральное число, которое является квадратом другого натурального числа. Например: 1, 25, 144.

Вашему решению будет предоставлен список numbers, содержащий натуральные числа.

Разработайте выражение для генерации множества всех чисел, которые выступают полными квадратами.

Примечание

В решении не должно быть ничего, кроме списочного выражения.

Пример

Ввод

numbers = [1, 2, 3, 4, 5]

Вывод

{1, 4}

Ввод

numbers = [number for number in range(16, 100, 4)]

Вывод

{16, 64, 36}

Решение

Задание отличается от предыдущего только условием проверки

Фактически, нам надо завернуть в списочное выражение следующий код:

Python
result = set()

for num in numbers:
    if (int(num ** 0.5)) ** 2 == num:
        result.add(num)

Посмотреть код

Решение

Python
{num for num in numbers if int(num ** (0.5)) ** 2 == num}
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии