2013-06-19 108 views
-1

我想要返回之和的3所有多个或5,下面1000有人可以解释我的代码有什么问题吗?

def trying(number): 
box = 0 
    while number < 1000: 
     if number %3 or %5: 
      box = box + number 
     number -=1 
    return box 

+11

我不认为Project Euler喜欢它,当你问Stack Overflow寻求帮助。 http://projecteuler.net/problem=1 – Brien

+3

请记住添加所有可以的信息:是否有错误?输出是否错误? – thegrinner

+0

另外,请记住,Python对空白敏感 - 此代码不会按照显示的方式工作。 – thegrinner

回答

3

or声明需要两个完整的条件。当你说“你想在早晨还是晚上去?”时,它不像英语?你必须说“你想在早上或晚上去吗?” %5没有任何可参考的内容。这就像是说“你想去晚上吗?”这是没有意义的。这就是说,你必须使用if number % 3 == 0 or number % 5 == 0:,以便%5运算符有一个值来操作。希望这可以帮助。

5

使用功能:if number %3==0 or number %5==0:作为number %3 or %5是无效的语法。

+1

我们不想在那里有== 0吗? –

相关问题