
一、使用三种方法实现0-n累加求和
定义函数分别使用while循环、for循环、递归函数实现对0-n的累加求和
1、使用while循环
定义一个累加求和函数sum1(n),函数代码如下:

2、使用 for循环
定义一个累加求和函数sum2(n),函数代码如下:

3、使用递归函数
定义一个累加求和函数sum3(n),函数代码如下:

二、使用了三种实现累加求和的方法,分别定义了三个函数。
1、对0-100实现累加求和,令n=100,分别调用三个函数,
代码如下:

2、 控制台的输出结果都为:5050

3、这里需要注意的是:
- 在while循环中需要定义初始值和累加变量,防止出现死循环;
- for循环的作用就是循环遍历;
- 递归函数一定要设置递归的出口,即当函数满足一个条件时,函数不再执行,目的防止出现死循环;设置当n=1时 ,我们让函数返回1,return后面的代码不在执行。使用return返回值,当我们调用函数的时候需要使用变量进行接收,才能在控制台有输出结果。
在python中,计算Sum = m + mm + mmm +mmmm+.....+mmmmm.....,输入两个数m,n。m的位数累加到n的值,列出算式并计算出结果:
#为了打印出算式,并计算出结果,将m,mm这些放入到列表中
#定义列表中的m初始值为0,用Ele来代表m,mm....
Ele = 0
#定义总和为0
Sum = 0
#定义一个空列表
List = []
#输入两个值
n = int(input("input a digit:"))
m = int(input("input a digit:"))
#用循环的方式计算每个Ele(m,mm,mmm...)的值
#同时计算出总和
for i in range(n):
Ele = Ele + m #前两行循环计算出每个Ele的值
m = m * 10
Sum = Sum + Ele #循环计算出总和
Str = str(Ele) #将Ele转化为字符串型,方便将列表整个转化成一个长字符串也就是计算公式
(Str) #循环往列表添加一个Ele在列表的最后位置
("+") #循环往列表添加一个"+"在列表的最后位置,完成上面循环之后,列表中就出现了["m","+","mm","+","mmm","+"。....,"+"]
() #去掉列表中的最后一个加号,算式的最后面是没有加号的
print("".join(List) + "=",end="") #列表通过("".join)函数转化为字符串并去掉中间的逗号变成m+mm+mmm+...mmm....,再拼接上“=”号,设置打印不换行
print(Sum) #将计算结果拼接在公式的末尾,一个算式完美的出现了