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

Odpoveď od AI

Táto metóda kontroluje, či je číslo n dokonalým štvorcom celého čísla.

Algoritmus:

  • Ak je n záporné, okamžite vrátime false, pretože záporné čísla nemôžu byť dokonalými štvorcami.
  • Vypočítame celočíselný druhú odmocninu sqrt pomocou Math.sqrt(n) a prevedieme ju na int.
  • Skontrolujeme, či je štvorcový sqrt * sqrt rovný pôvodnému číslu n. Ak áno, číslo je dokonalým štvorcom.

Príklad použitia:

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