Python 练习实例18

题目18:
求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
我想了两种方法。第一种,是我看到题目后,直觉的用数学思维去推导;第二种,做完第一种方法,忽然觉得好麻烦,于是想到了画棋盘,弄成字符串后再int就好了。我喜欢第二种

#1
x = int(input(u'请输入底数(1-9):'))
n = int(input(u'请输入几位数:'))
sum =  0

for i in range(1, n + 1):
    sum += i *(x * 10 ** (n - 1))
    n -= 1
    print(sum)
print('n =', n, sum)
#2
x = int(input(u'请输入底数(1-9):'))
n = int(input(u'请输入几位数:'))
intstr = 0
for i in range(1, n+1):
    intstr += int(x * i)
    print(intstr)
print intstr

你可能感兴趣的:(python,实例)