0

再帰関数でpow関数を使用できますか? 例えば:

double exponencial(double x, int n){
if(n>0)
return (pow(x,n)/n)+exponencial(x,n-1);
return 1;
}
4

3 に答える 3

0

再帰では任意の関数を使用できます。powは単に関数であり、特別なことではありません。

于 2013-03-13T13:59:56.037 に答える
0

再帰は、使用できる関数と使用できない関数に制限を設けません。はい、pow再帰関数で使用できます。

あなたの例でpow(x,n)は、最初に呼び出され(ほとんどの場合)、戻り値は n で除算されます。次に、すべての関連データがスタックにプッシュされ (先ほど行った計算の答えを含む)、exponencial(x,n-1)呼び出されます。この再帰呼び出しが戻ると、データがスタックから再びポップされ、最終結果が計算されて返されます。

于 2013-03-13T14:03:11.427 に答える