Чтобы проверить, является ли число точным квадратом в Python, можно использовать несколько методов. Вот некоторые из них:
Метод 1. Использование математического модуля
import math
def is_perfect_square(num):
sqrt = math.isqrt(num)
return sqrt * sqrt == num
Метод 2. Использование оператора возведения в степень
def is_perfect_square(num):
sqrt = num 0.5
return sqrt == int(sqrt)
Метод 3. Использование цикла
def is_perfect_square(num):
if num < 0:
return False
if num == 0:
return True
for i in range(1, int(num 0.5) + 1):
if i * i == num:
return True
return False
Метод 4. Использование встроенной функции math.isclose()
import math
def is_perfect_square(num):
sqrt = math.sqrt(num)
return math.isclose(sqrt, int(sqrt))
Все эти методы проверяют, является ли число точным квадратом, определяя, является ли его квадратный корень целым числом. Первый метод использует функцию math.isqrt()для вычисления целочисленного квадратного корня числа, а второй метод возводит число в степень 0,5 и проверяет, равно ли оно своему целочисленному представлению.. Третий метод использует цикл для перебора чисел до квадратного корня из входных данных и проверяет, равно ли какое-либо из них, умноженное на себя, входным данным. Четвертый метод использует функцию math.sqrt()для вычисления квадратного корня, а затем проверяет, близко ли оно к целому числу, с помощью функции math.isclose().п>