#方法1:for循环
n = int(input('请输入一个正整数:'))
sum = 0
for i in range(n + 1):
sum += i
print(sum)
#方法2:递归调用
n = int(input('请输入一个正整数:'))
def Sum(n):
if n <= 1:
return 1
return Sum(n - 1) + n
print(Sum(n))
#简化方法,计算1+2+……+100的和,实现方法如下:
sum = 0
for i in range(1,100+1):
sum += i
print(sum)
递归:如果一个函数在内部调用自己本身,这个函数就是递归函数
1.首先需要定义整个digital程序的终点(如上面的if n <= 1),否则会不停的执行下去,最终随着栈被占满整个程序就会崩溃。
2.写出参数n 和 n -1的关系即可,如上面的加法运算Sum(n) = Sum(n - 1) + n
3.递归的最大深度与编译器(或者解释器)的最大栈的深度以及执行环境的最大内存有关,二者是或的关系。 其中编译器的最大递归深度修改方法如下:
import sys
sys.setrecursionlimit(1000)# 修改最大递归深度,这里设为1千