Назад к вопросам
Senior
6
public static boolean isPerfectSquare(int n){ if (n < 0) return false; int sqrt = (int) Math.sqrt(n); return sqrt * sqrt == n; }
Компании, где спрашивали
Позитив Технолоджис
Ответ от нейросети
sobes.tech AI
Этот метод проверяет, является ли число n точным квадратом целого числа.
Алгоритм:
- Если
nотрицательное, сразу возвращаемfalse, так как отрицательные числа не могут быть квадратами целых чисел. - Вычисляем целочисленный квадратный корень
sqrtс помощьюMath.sqrt(n)и приведения кint. - Проверяем, равен ли квадрат
sqrt * sqrtисходному числуn. Если да — число является точным квадратом.
Пример использования:
System.out.println(isPerfectSquare(16)); // true
System.out.println(isPerfectSquare(20)); // false