Python 練習實例18
python 練習實例18
題目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數(shù)字。例如2+22+222+2222+22222(此時共有5個數(shù)相加),幾個數(shù)相加由鍵盤控制。
程序分析:關(guān)鍵是計算出每一項的值。
程序源代碼:
實例(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)
以上實例輸出結(jié)果為:
n = 4 a = 4 4 44 444 4444 計算和為: 4936