|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
麻烦针对图中题目要求,写个算法程序!
本帖最后由 jackz007 于 2022-9-30 13:09 编辑
- e = [list(map(int , input() . split())) for _ in range(5)] # 获取 5 组键盘输入,e = [[s , d , r] , [s , d , r] , . . .]
- print()
- for k in range(5): # 循环 5 次
- s , d , r = e[k] # 取出每次的 s、d、r
- for i in range(r): # 循环 r 次(三角形的层数),目的是递推最后一层(行)的元素序列
- x = [] # x 用于保存通过计算得到的单行元素序列
- for j in range(i + 1): # 循环计算第 i + 1 行的元素序列
- while s > 9: # 确保 s 只有一位数
- s = sum(map(int , str(s))) # str(s) 把 s 变为字符串,map(int , str(s)) 把各个位上的数据变成一位数的数字序列,sum(map(int , str(s))) 对整个数字序列求和。
- x . append(s) # 把 s 添加到列表 x 中
- s += d # 累加计算下一个元素
- print('%d. %d' % (k + 1 , sum(x))) # 计算并打印索引为 k 三角形最后一行所有元素的和
复制代码
【运行实况】:
- D:\[00.Exerciese.2022]\Python>python x.py
- 2 3 5
- 221 2 4
- 184 231 35
- 71 5 27
- 1 24 100
- 1. 28
- 2. 17
- 3. 140
- 4. 135
- 5. 397
- D:\[00.Exerciese.2022]\Python>
复制代码
|
|