math.h / pow()を使用せずに再帰的なべき関数を作成しようとしていますが、.のガベージ値を取得し続けます-1.#IND
。べき関数の新しいインスタンスを呼び出すときに何かが足りないと思いますが、それを回避する方法がよくわかりません。私の完全なコードはかなり短いです:
#include <iostream>
using namespace std;
double power(double b, int e){
double x;
if(e == 0){
x = b;
}
else if(b == 0){
x = 1;
e = 0;
}
else if(e < 0){
x = (1 / b) * power(b, ++e);
}
else{
x = b * power(b, --e);
}
return x;
}
int main(){
double num;
int exp;
cout << "Please Enter Your Number: ";
cin >> num;
cout << "Please Enter The Explonent: ";
cin >> exp;
cout << power(num, exp);
cin >> num;
}