Полным квадратом назовём натуральное число, которое является квадратом другого натурального числа. Например: 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}