Python源码:火柴棒摆数字有6根火柴棒,列出所有能摆出的自然数

题:用自定义函数,火柴棒摆数字有6根火柴棒,列出所有能摆出的自然数, 要求火柴棒正好摆完

解析:

1、0-9这十个数字,每个数字分别需要的火柴根数如下
Python源码:火柴棒摆数字有6根火柴棒,列出所有能摆出的自然数_第1张图片

 2、用6根火柴摆出的最小数字是:0

       用6根火柴摆出的最大数字是:111

3、Python源代码:

def nums(x):    

        a=[6,2,5,5,4,5,6,3,7,6]    

        if 10>x>=0:        

                return a[x]    

        elif 100>x>=10:        

                strNum=str(x)        

                shi=strNum[0]        

                ge=strNum[1]        

                return a[int(shi)]+a[int(ge)]    

        else:        

                strNum=str(x)        

                bai=strNum[0]        

                shi=strNum[1]        

                ge=strNum[2]        

                return a[int(bai)]+a[int(shi)]+a[int(ge)]      

#主程序

for i in range(112):    

        if nums(i)==6:        

                print(i)

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