Python 练习实例18
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
程序分析:关键是计算出每一项的值。
程序源代码:
实例(Python 2.0+)
#!/usr/bin/python
# -*- coding: UTF-8 -*-
Tn = 0
Sn = []
n = int(raw_input('n = '))
a = int(raw_input('a = '))
for count in range(n):
Tn = Tn + a
a = a * 10
Sn.append(Tn)
print Tn
Sn = reduce(lambda x,y : x + y,Sn)
print "计算和为:",Sn
以上实例输出结果为:
n = 4 a = 4 4 44 444 4444 计算和为: 4936
Python 100例
鱼尾巴的鱼
824446174@qq.com
参考解法:
#!/usr/bin/python # -*- coding: UTF-8 -*- a = int(raw_input("a:")) n = int(raw_input("n:")) list=[] for i in range(1,n+1): list.append(int("{}".format(a)*i)) s = reduce(lambda x,y:x+y, list) print list print "计算和为:",s输出如下所示:
鱼尾巴的鱼
824446174@qq.com
等一个人
252343465@qq.com
Python3 测试实例:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- n = int(input('n = ')) a = int(input('a = ')) sum = 0 total = 0 for i in range(n): sum += (10 ** i) total += sum * a print(total)等一个人
252343465@qq.com