Sobes.tech
Senior

public static boolean isPerfectSquare(int n){ if (n < 0) return false; int sqrt = (int) Math.sqrt(n); return sqrt * sqrt == n; }

sobes.tech AI

Odpowiedź od AI

Ta metoda sprawdza, czy liczba n jest dokładnym kwadratem liczby całkowitej.

Algorytm:

  • Jeśli n jest ujemne, od razu zwracamy false, ponieważ liczby ujemne nie mogą być kwadratami całkowitymi.
  • Obliczamy całkowity pierwiastek kwadratowy sqrt za pomocą Math.sqrt(n) i konwersji na int.
  • Sprawdzamy, czy kwadrat sqrt * sqrt jest równy oryginalnej liczbie n. Jeśli tak, liczba jest dokładnym kwadratem.

Przykład użycia:

System.out.println(isPerfectSquare(16)); // true
System.out.println(isPerfectSquare(20)); // false