编写递归函数求x的n次方, 并调用此函数求2的5次方。
时间: 2023-06-06 21:06:22 浏览: 99
好的,这是一个计算问题,我可以回答。递归函数求x的n次方可以这样写:
```python
def power(x, n):
# 递归结束条件
if n == 0:
return 1
# 递归公式
return x * power(x, n-1)
# 求2的5次方
ans = power(2, 5)
print(ans)
```
程序会输出32。
相关问题
编写递归函数求x的n次方, 并调用此函数求2的5次方。
以下是求x的n次方的递归函数的Python代码:
```python
def power(x, n):
if n == 0:
return 1
elif n % 2 == 0:
return power(x*x, n/2)
else:
return x * power(x, n-1)
```
其中,如果n是偶数,我们通过递归调用 power(x*x, n/2) 来计算x的n次方。如果n是奇数,我们先计算x的n-1次方,然后再乘以x。
然后,我们可以调用这个函数来计算2的5次方:
```python
print(power(2, 5)) # 输出 32
```
因为 $2^5$ 等于32。
C语言:编写递归函数求x的n次方, 并调用此函数求2的5次方。
好的,这是一个关于 C 语言的编程问题。可以使用递归算法来实现求 x 的 n 次方的功能。以下是一个示例代码:
```
#include <stdio.h>
double power(double x, int n)
{
if (n == 0)
{
return 1.0;
}
else if (n == 1)
{
return x;
}
else
{
double t = power(x, n/2);
if (n%2 == 0)
{
return t*t;
}
else
{
return t*t*x;
}
}
}
int main()
{
double result = power(2.0, 5);
printf("2^5 = %f\n", result);
return 0;
}
```
输出结果为:
```
2^5 = 32.000000
```
阅读全文