编程语言
首页 > 编程语言> > 用Python解一道小数奥数题

用Python解一道小数奥数题

作者:互联网

        大家好,最近初学Python,经常尝试多将Python用于实践,比如解奥数题。

        佛山黄老师提供了一个题目:由数字1-9组成的四位整数中,个位上的数字能被千位、百位、十位上的数字的积整除的四位自然数有多少个?如1228,其个位上的数字能被千位、百位、十位上的数字的积整除,即8能被1×2×2=4整除。

        如果从小学生的角度,可从个位上的数字为突破口,用列表法穷举,如下图。

如果用Python语句,则可以更快得出结果,如下面的语句和部分截图。

num=0
for a in range(1,10):
    for b in range(1,10):
        for c in range(1,10):
            for d in range(1,10):
                if (d)%(a*b*c)==0:
                    print(a,b,c,d)
                    num+=1
print("运行结束,满足条件的数字共有{}个。".format(num))

标签:10,数字,Python,range,num,整除,奥数,小数
来源: https://blog.csdn.net/weixin_51630390/article/details/112098341