math.pow(), ** 제곱연산자, for문 / 제곱하는 방법

YS_Study.log·2022년 1월 15일
0

제곱하는 3가지 방법

math.pow(), ** 제곱연산자, for문

코드스테이츠에서 풀었던 알고리즘 문제에 일부 제곱하는 부분이 있었다. 제곱하는 방식이 생각보다 다양해서 조금 궁금한 마음에 간단하게 알아보게 되었다.

math.pow(x,n) 메소드

Math.pow(base, exponent)

재귀함수, base^exponent처럼 base(밑) 에 exponent(지수)를 제곱한 값을 반환합니다.

MDN예시)

Math.pow(7, 2);    // 49
Math.pow(7, 3);    // 343
Math.pow(2, 10);   // 1024
// 분수 지수
Math.pow(4, 0.5);  // 2 (4의 제곱근)
Math.pow(2, 0.5);  // 1.4142135623730951 (2의 제곱근)
// 양의 지수
Math.pow(7, -2);   // 0.02040816326530612 (1/49)
Math.pow(8, -1/3); // 0.5
// 양의 밑
Math.pow(-7, 2);   // 49 (제곱의 결과값은 양수입니다.)
Math.pow(-7, 3);   // -343 (세제곱은 음수가 될 수 있습니다.)

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Math/pow

** 제곱연산자

x(밑) ** y(지수)
MDN예시)

2 ** 3   // 8
3 ** 2   // 9
3 ** 2.5 // 15.588457268119896
10 ** -1 // 0.1
NaN ** 2 // NaN

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Exponentiation

for문으로 제곱 구하는 법

  • 지수(exponent)만큼 밑(base)을 반복적으로 곱하면 된다.
function computePower(base, exponent) {

let result = 1;

for (let i = 0; i< exponent; i++){ //
   result = result * base;

// i=0 초기값 / result = result * base; / 증감문 i++ (i+1)
// i가 0     / 1 * 2; = result가 2;    / 0+1 =1 
// i가 1     / 2 * 2; = result가 4;    / 1+2 =2
// i가 2     / 4 * 2; = result가 8;    / 2+1 =3

}
return result;
}
profile
느리지만 조금씩 공부하는 중 입니다. 현재 1년 6개월차 신입입니다 ><!

0개의 댓글