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
Atsakymas iš AI
Šis metodas patikrina, ar skaičius n yra sveikojo skaičiaus tikrasis kvadratas.
Algoritmas:
- Jei
nyra neigiamas, iš karto grąžinamafalse, nes neigiami skaičiai negali būti tikri kvadratai. - Apskaičiuojame sveikąjį kvadratinį šaknį
sqrtnaudodamiMath.sqrt(n)ir konvertuojame įint. - Patikriname, ar
sqrt * sqrtyra lygus pradiniam skaičiuin. Jei taip, skaičius yra tikrasis kvadratas.
Naudojimo pavyzdys:
System.out.println(isPerfectSquare(16)); // true
System.out.println(isPerfectSquare(20)); // false