美文网首页日更成长营自学编程Python
自学Python:求解爱因斯坦的数学题

自学Python:求解爱因斯坦的数学题

作者: 小强聊成长 | 来源:发表于2021-11-26 09:44 被阅读0次

    爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最后剩一阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶,则最后剩5阶。只有每次跨7阶,最后才正好一阶不剩。请问在1到n内,有多少个数能满足?

    下面直接上代码:

    ########################

    def lts(n):

        print("在1-%d之间的阶梯数为:" %n)

        sum = 0

        for i in range(7, n+1):

            # 阶梯数所满足的条件

            if (i % 7 == 0) and (i % 6 == 5) and (i % 5 == 4) and (i % 3 == 2):

                sum += 1  # sum记录1~n之间满足条件的阶梯个数

                print("%d" %i)

        print("在1-%d之间,有%d个数可以满足爱因斯坦对阶梯的要求。" %(n, sum))

    if __name__=="__main__":

        while True:

            n = int(input("请输入n值:"))

            lts(n)

    ########################

    执行结果如下:

    请输入n值:200

    在1-200之间的阶梯数为:

    119

    在1-200之间,有1个数可以满足爱因斯坦对阶梯的要求。

    请输入n值:100

    在1-100之间的阶梯数为:

    在1-100之间,有0个数可以满足爱因斯坦对阶梯的要求。

    请输入n值:500

    在1-500之间的阶梯数为:

    119

    329

    在1-500之间,有2个数可以满足爱因斯坦对阶梯的要求。

    请输入n值:

    如果你输入的值小于119是看不到符合条件的答案的,所以这个楼梯是非常长的楼梯。

    ________________END______________

    相关文章

      网友评论

        本文标题:自学Python:求解爱因斯坦的数学题

        本文链接:https://www.haomeiwen.com/subject/ridwtrtx.html