python求一组数据和

时间:2021-05-09 15:03:22
# -*- coding: utf-8 -*-
# 问题描述:求这样的一组数据和,s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字;
# 例如:2+22+222+2222+22222(此时共有5个数相加),这里具体是由几个数相加,由键盘控制。
def data(digit,number):
list=[]

list.append(digit)
for i in range(1,number):
list.append(list[i-1]+digit*pow(10,i))
print list

sum = 0
for j in list:
sum = sum + j
print sum

if __name__=="__main__":
digit=int(raw_input("请输入需要计算的一个数字:"))
number=int(raw_input("请输入需要计算的最大位数:"))
data(digit,number)

运行结果:

请输入需要计算的一个数字:2
请输入需要计算的最大位数:7
[2, 22, 222, 2222, 22222, 222222, 2222222]
2469134

总结:

思考用递归怎么实现?