下面是一個(gè)C++中計(jì)算冪次的函數(shù)的遞歸實(shí)現(xiàn)方法:
#include <iostream>
double power(double base, int exponent) {
if (exponent == 0) {
return 1;
}
else if (exponent > 0) {
return base * power(base, exponent - 1);
}
else {
return 1 / base * power(base, exponent + 1);
}
}
int main() {
double base = 2;
int exponent = 3;
double result = power(base, exponent);
std::cout << base << " raised to the power of " << exponent << " is: " << result << std::endl;
return 0;
}
在這個(gè)例子中,power
函數(shù)采用了遞歸的方式計(jì)算冪次。當(dāng)指數(shù)為0時(shí),返回1;當(dāng)指數(shù)大于0時(shí),返回基數(shù)乘以power(base, exponent-1)
;當(dāng)指數(shù)小于0時(shí),返回1除以基數(shù)乘以power(base, exponent+1)
。然后在main
函數(shù)中調(diào)用power
函數(shù)來(lái)計(jì)算結(jié)果。