Python 练习实例18

python 练习实例18

python 编程100例python 编程100例

题目:求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

实例(python 3.0+):

#!/usr/bin/python
from functools import reduce
 
tn = 0
sn = []
n = int(input('n = '))
a = int(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例python 编程100例

下一节:python 练习实例19

python 编程100例

相关文章