[Java] Math.sqrt 제곱근 구하기

epiphany·2022년 10월 21일
0

Programmers School

목록 보기
8/22
post-thumbnail

🛫 Programmers School에서 제곱수 판별하기 문제 풀이 중 정리하고 싶은 부분이 있어서 개념정리

🧩 Math.sqrt

수학의 루트와 동일한 의미를 가짐

num = Math.sqrt(25);
System.out.print(num);

// 5

위 코드와 같이 사용할 수 있음

문제 풀이

문제는 제곱수인지 아닌지 판별하는 문제이다.
즉 25를 주고 이것이 제곱수라면 1, 아니라면 2 출력하면 된다.

나는 n이 제곱수라면 sqrt를 사용시 n.0과 같은 형식으로 나올 것, 아니면 n.111이런식으로 나오기에 double형과 int형으로 비교하여 문제를 풀었다.

코드

class Solution {
    // 
    // 더 간단한 풀이는 if (n % Math.sqrt(n) == 0)
    public int solution(int n) {
        int answer = 0;
        double num = 0;
        if (1<=n && n<=1000000){
            num = Math.sqrt(n);
            if ((int)num==num) answer = 1;
            else answer = 2;
        }
        return answer;
    }
}

더 간단한 코드

if (n % Math.sqrt(n) == 0)

다른 사람의 문제 풀이 보다가 너무 간단하게 하셔서, 사실 이 코드를 기록해두려고 작성한 글이다 ㅎㅎ...
코딩할때 더 간편하게, 더 쉽게를 많이 생각해야겠다!

📚 참고

https://coding-factory.tistory.com/532

0개의 댓글