임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
Math.sqrt()
을 이용해서 숫자의 제곱근을 반환한다.
Math.sqrt(9) = 3;
Math.sqrt(3) = 1.7320508075688772;
만약 양의 정수의 제곱이 아닌 값을 넣으면, 소숫점을 가진 숫자를 반환하게 된다. 이를 통해, 소숫점을 가진 숫자를 판별해야겠다고 생각이들었다.
자바스크립트 소수점 이하의 값만 얻는 방법
예를들어 10.234라는 숫자가 있다면 0.234의 값만 얻고 싶습니다.
(소수점 구할 숫자 값) % 1
function solution(n) {
var answer = 0;
if(Math.sqrt(n) % 1 === 0 ) {
answer = (Math.sqrt(n) +1) **2
}else{
answer=-1
}
return answer;
}
Number.isInteger(num)
Math.pow(num,2)
function nextSqaure(n){
var result = 0;
var n = Math.sqrt(n);
result = Number.isInteger(n) ? Math.pow(n+1, 2) : 'no';
return result;
}