项目Euler 4 while循环问题

时间:2015-12-08 23:29:52

标签: python

所以我最近开始尝试解决项目问题,我试图解决问题4.我编写了应该工作的代码,但是某个while循环拒绝运行。这是代码:

def project_euler_problem_4():
    x = 998001
    y = 999
    while x > 10000:
        if x == int(str(x)[::-1]):
            while y > 100:
                if x % y == 0:
                    print x
                    print y
                    print x/y
                    break
                y = y -1
        x = x -1

当我尝试在if语句之后调用while循环时出现问题。我的计算机科学老师也不知道是什么造成了问题。如果你能提供帮助那就太好了。谢谢!

1 个答案:

答案 0 :(得分:1)

在最里面的循环中,y将变为99.它永远不会再次重新初始化为999。所以它只会运行一次。

更改它以便y设置回999以进行下一次测试。

def project_euler_problem_4():
x = 998001
while x > 10000:
    if x == int(str(x)[::-1]):
        y = 999
        while y > 100:
            if x % y == 0:
                print x
                print y
                print x/y
                break
            y = y -1
    x = x -1