用Python自定义递归函数求1....n的奇数和,偶数和
时间: 2024-10-18 16:09:35 浏览: 29
在python中实现求输出1-3+5-7+9-......101的和
5星 · 资源好评率100%
在Python中,我们可以使用递归来分别计算从1到n的奇数和偶数和。递归是一种解决问题的技术,通过将大问题分解成规模较小的相似子问题来达到目的。下面是一个简单的例子:
```python
def sum_of_odd(n):
# 基线条件:当n为0或1时,直接返回n(因为只有一个奇数)
if n == 0 or n == 1:
return n
else:
# 递归情况:当前数字加上比它小1的偶数之和(n - 2),即前一个奇数的和
return n + sum_of_odd(n - 2)
def sum_of_even(n):
# 基线条件:当n为0时,返回0(因为没有偶数)
if n == 0:
return 0
else:
# 递归情况:当前数字减去比它小1的奇数之和,即前一个偶数的和
return n + sum_of_odd(n - 2) # 用sum_of_odd(n - 2)替代
# 计算1到n的奇数和和偶数和
def main(n):
odd_sum = sum_of_odd(n)
even_sum = sum_of_even(n)
return odd_sum, even_sum
n = 5 # 可以替换为你想计算的值
odd_result, even_result = main(n)
print(f"1到{n}的奇数和为: {odd_result}")
print(f"1到{n}的偶数和为: {even_result}")
阅读全文