5、利用递归函数实现计算功能:1^2+2^2+3^2+…+n^2。
时间: 2024-01-15 12:03:24 浏览: 25
以下是利用递归函数实现计算1^2+2^2+3^2+…+n^2的Python代码:
```python
def sum_of_squares(n):
if n == 1:
return 1
else:
return n**2 + sum_of_squares(n-1)
# 测试代码
print(sum_of_squares(1)) # 输出:1
print(sum_of_squares(2)) # 输出:5
print(sum_of_squares(3)) # 输出:14
print(sum_of_squares(4)) # 输出:30
print(sum_of_squares(5)) # 输出:55
```
解释一下代码实现过程:
在递归函数`sum_of_squares(n)`中,当n等于1时,返回1;否则返回n的平方加上`sum_of_squares(n-1)`的值。递归的过程是从n不断减小到1,每次递归都会计算n的平方并加上前面n-1个数的平方和。最终得到的结果就是1^2+2^2+3^2+…+n^2。
相关问题
python编写程序实现利用递归函数实现计算功能:1^2+2^2+3^2+…+n^2
可以使用递归函数来实现,具体代码如下:
```python
def sum_of_squares(n):
if n == 1:
return 1
else:
return n**2 + sum_of_squares(n-1)
n = int(input("请输入n的值:"))
result = sum_of_squares(n)
print("1^2+2^2+3^2+...+n^2的结果为:", result)
```
首先定义一个递归函数 `sum_of_squares`,该函数的作用是计算 1^2+2^2+3^2+…+n^2 的值。当 n 等于 1 时,返回 1;否则,返回 n^2 加上 `sum_of_squares(n-1)` 的值。最后,通过输入 n 的值来调用该函数,并打印出结果。
利用递归函数实现一个计算功能:pf(n)=12+22+32+……+n2
以下是利用递归函数实现计算pf(n)的代码:
```python
def pf(n):
if n == 1:
return 1
else:
return pf(n-1) + n**2
n = 5
result = pf(n)
print("pf({}) = {}".format(n, result))
```
输出结果为:
```
pf(5) = 55
```
解释:
当n=1时,pf(1) = 1^2 = 1。
当n>1时,pf(n) = pf(n-1) + n^2,即pf(n)等于前n-1项的平方和再加上n的平方。
在代码中,递归调用pf函数来计算前n-1项的平方和,然后加上n的平方,最终得到pf(n)的结果。