728x90
#문제
수를 입력받아 제곱근 값을 소수점 두자리까지 리턴해야한다.
Math.sqrt 사용은 금지됩니다.
최대 소수점 둘째 짜리까지 구합니다. (소수점 셋째 자리에서 반올림)
number 타입을 리턴해야 합니다.
#예시
let output = computeSquareRoot(9);
console.log(output); // --> 3
output = computeSquareRoot(6);
console.log(output); // --> 2.45
#정답
바빌로니아법
function computeSquareRoot(num) {
let approx =1;
while(approx ** 2 !== num){
if(Number((approx*approx).toFixed(2))===num){
break;
}
approx = (approx +(num/approx)) /2;
}
return Number(approx.toFixed(2));
}
#풀이
tofixed(2) 소수점두자리까지
let 근사값 = 원래숫자 /2
while((근사값**2)!==원래숫자){
근사값 = (근사값 +(원래숫자/근사값)) / 2
728x90
'코플릿 기록 > JavaScript' 카테고리의 다른 글
데일리코딩 12번 findBugInApples (0) | 2023.01.31 |
---|---|
데일리코딩 11번 removeExtremes ★★ (0) | 2023.01.30 |
데일리코딩 10번 insertDash (0) | 2023.01.27 |
객체 13번 (0) | 2023.01.23 |
객체 6번 (0) | 2023.01.23 |