作业

题目

定义函数实现如下要求
例如:输入2,5,则求2+22+222+2222+22222的和

思路

第一种方法:

看题目中的例子:

  第一个是2 ,第二个是22 ,第三个是 222 ....

用字符串拼接:

  第一个 "2"    第二个 "2"+"2" ,第三个是"2"+"2"+"2"...

代码如下:

def sum1(x,y):
    m = ''
    sum = 0
    while y > 0:
        m = m + str(x)#"2"  ""22"  "222"
        y -= 1
        sum += int(m)#2+22+222
    return sum
print(sum1(2,3))



第二种方法:

  第一个是2 ,第二个是22 ,第三个是 222 ....

  第一个是2x10*0 ,第二个是2x10*0+2x10*1,第三个是 2x10*0+2x10*1+2x10*3 ....

代码如下

def sum1(num1,num2):
    sum2 = 0
    sum = 0
    for i in range(num2):
        sum2 +=num1*10**i
        sum +=sum2
    return sum
sum1(2,3)
原文地址:https://www.cnblogs.com/allwell/p/9960147.html