美文网首页日更成长营自学编程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