숫자의 거듭제곱은 x^y로 계산할 수 있습니다. 여기서 x는 숫자이고 y는 그 거듭제곱입니다.
예를 들어.
Let’s say, x = 2 and y = 10 x^y =1024 Here, x^y is 2^10
재귀를 이용하여 거듭제곱을 구하는 프로그램은 다음과 같습니다.
예시
#include <iostream> using namespace std; int FindPower(int base, int power) { if (power == 0) return 1; else return (base * FindPower(base, power-1)); } int main() { int base = 3, power = 5; cout<<base<<" raised to the power "<<power<<" is "<<FindPower(base, power); return 0; }
출력
3 raised to the power 5 is 243
위 프로그램에서 findPower() 함수는 재귀 함수입니다. 거듭제곱이 0이면 함수는 0의 거듭제곱이 1이기 때문에 1을 반환합니다. 거듭제곱이 0이 아니면 함수는 재귀적으로 자신을 호출합니다. 이것은 다음 코드 스니펫을 사용하여 보여줍니다.
int FindPower(int base, int power) { if (power == 0) return 1; else return (base * findPower(base, power-1)); }
main() 함수에서 findPower() 함수가 처음에 호출되고 숫자의 거듭제곱이 표시됩니다.
이는 아래 코드 스니펫에서 확인할 수 있습니다.
3 raised to the power 5 is 243