알고리즘

프로그래머스 Level 1 - 정수 제곱근 판별 (Javascript)

또롱또 2022. 5. 15. 13:25
728x90

https://programmers.co.kr/learn/courses/30/lessons/12934

function solution(n) {
    var answer = 0; 
    
    // root값을 넣어줄 변수생성
    let root = 0;
    
    // 받아온값을 루트로 만들어준다.
    root = Math.sqrt(n)
    
    // 만약에 값을 1로나눠서 나머지값이 0이면 정수, 아니면 소수 란 뜻이다.
    root % 1 === 0? answer = Math.pow(root+1,2) : answer = -1;
    
    return answer;
}

나는 그냥 제곱근을 루트값을 만들고

조건문에 넣어서 정수 소수 판별한다음에 다시 계산하는 식으로 했다

정답은 대부분 비슷했지만 아래의 정답은 나와다르게 정수 소수를 Number.isInteger라는 값을 사용했다.

function nextSqaure(n){
    var result = 0;
    var n = Math.sqrt(n);
    result = Number.isInteger(n) ? Math.pow(n+1, 2) : 'no';
    return result;
}
728x90