要求编写函数fn(a,n) 求a+aa+aaa++⋯+aa⋯aa(n个a)之和,fn须返回的是数列和。从控制台输入正整数a和n的值(两个值都不超过9),并输出fn(a,n)的结果值。大佬能给我讲讲思路和代码吗?
3条回答 默认 最新
- CSDN专家-天际的海浪 2021-07-03 22:45关注
你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)
def fn(a,n): s = 0 d = 0 for i in range(n): d = d*10+a s += d return s p = input("输入 a n:").strip().split(" ") a = int(p[0]) n = int(p[1]) print(fn(a,n))
思路是:设置一个d 初始为 0,循环n次,每次d都是先乘以10再加上a。
乘以10 的作用是把之前的值向高位移一位,留出个位好加上a的值。
比如a是8,
第一次循环d*10+8
等于 8
第二次循环8*10+8
等于 88
第三次循环88*10+8
等于 888
把每次的结果都累加到s中即可本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
- ¥20 怎么用dlib库的算法识别小麦病虫害
- ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
- ¥15 java写代码遇到问题,求帮助
- ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
- ¥15 有了解d3和topogram.js库的吗?有偿请教
- ¥100 任意维数的K均值聚类
- ¥15 stamps做sbas-insar,时序沉降图怎么画
- ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
- ¥15 关于#Java#的问题,如何解决?