Python教程

Python趣味编程

本文主要是介绍Python趣味编程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

老鼠账本

一只老鼠咬坏了账本,公式中的符号□代表被老鼠咬掉的地方。要想恢复下面的等式,
应在□中填上哪个相同的数字?
3□6237=□33564

print("设等号左边的数为i,等号右边的数为i2")
    for i in range(1,10):
        for i2 in range(1,10):
            if (30+i)*6237==(i2*10+3)*3564:
                print("i=",i,"i2=",i2)

输出结果

i=6,i2=6

猴子吃桃

猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。到了第 10 天早上再吃时,就只剩一个桃子了。求第一天共摘多少桃子。

p = 1
    for i in range(1, 10):
        p = (p + 1) * 2
    print('第一天共摘了{}个桃子'.format(p))

输出结果

第一天共摘了1534个桃子

破解车牌号

这是—道侦探题。一辆汽车撞人后逃跑。4 个目击者提供如下线索:
甲:牌照三、四位相同; 乙:牌号为 31XXXX;
丙:牌照五、六位相同; 丁:三~六位是一个整数的平方。145
为了从这些线索中求出牌照号码,只要求出后四位再加上 31000 即可。这四位又是前两位相同,后两位也相同,互相又不相同并且是某个整数的平方的数。可以仍然使用穷举法,利用计算机的计算速度快的特点,把所有可能的数都试探一下,从中找出符合条件的数。
对于后面的 4 位数,因为 1000 的平方根>31,所以穷举实验时不需从 1 开始,而是从31 开始寻找一个整数的平方

    for i in range(1,10):
        for i2 in range(1,10):
            for i3 in range(1,10):
                for i4 in range(1,10):
                    for i5 in range(31,100):
                        if i == i2 and i3 == i4 and math.sqrt(i * 1000 + i2 * 100 + i3 * 10 + i4)==i5:
                            print("车牌号后6位为:", 310000 + i * 1000 + i2 * 100 + i3 * 10 + i4)

输出结果

车牌号后6位为: 317744
这篇关于Python趣味编程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!