[题目描述]
求 s=a+aa+aaa+aaaa+aa...a 的值,其中 a 是一个一位的整数。
例如 :2+22+222+2222+222222(此时共有 5 个数相加)。
输入格式:
整数 a 和 n ( n 个数相加)。
输出格式:
s 的值。
样例输入
2 2
样例输出
24
数据范围
对于 100% 的数据,保证 1≤n,a≤9 。
来源/分类(难度系数:一星)
完整代码展示:
# coding=utf-8
a,b=map(int,input().split())
c=0
d=1
while d<b+1:
e=''
for i in range(d):
e+=str(a)
c+=int(e)
d+=1
print(c)
代码解释:
“a,b=map(int,input().split())
c=0
d=1 ”,让用户输入组成数字的整数a和个数b。设各个数字的总和为c,令c的起始值为0(c=0);设循环密码子为d,令d的起始值为1(d=1)。
“while d<b+1:
e=''
for i in range(d):
e+=str(a)
c+=int(e)
d+=1 ”,当d<b+1时,循环d次将a连成一个字符串(得到一个长度为d,组成元素为a的字符串),接着将得到的字符串转化为实际的数值添加进c中。每重复以上操作一次就令d值加1,直至d=b+1,循环结束,退出整个whlie循环。
“print(c) ”,打印最终结果c(c为所有项的总和)。
运行效果展示: