![948027c15ad6c71f38ec3ec823032326.png](https://img-blog.csdnimg.cn/img_convert/948027c15ad6c71f38ec3ec823032326.png)
【本文结构】
- 题目信息:来源、地址、序号、描述
- 题目答案:简要分析,程序代码(测试运行通过,含注释),运行结果
- 霍霍磨刀:解答这道题目之前应掌握的知识基础
- 解析过程:题目类型,分析以及实践过程
- 斩获成果:通过解答这道题目之后的知识提升
- 下一题预告:来源、地址、序号、描述
【题目信息】
来源:菜鸟教程
地址:https://dwz.cn/Ol2QUMGD
序号:18
描述:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
【题目答案】
程序分析:关键是计算出每一项的值
程序代码:
from functools import reduce # 引入库
Tn = 0 # 初值为0
Sn = [] # 定义列表
n = int(input('n = ')) # 输入n
a = int(input('a = ')) # 输入a
for count in range(n): # 循环范围
Tn = Tn + a # 累加
a = a * 10 # a乘以10
Sn.append(Tn) # 添加到列表中
print(Tn) # 输出每个数
Sn = reduce(lambda x, y: x + y, Sn) # 累积函数
print("计算和为:", Sn) # 输出结果
运行结果:
n = 6
a = 2<