Python “%”运算符
我想找出所有的数都可以被1到5之间的数整除。如何编写程序,以便如果“start”的剩余部分除以x经过的所有数字等于0,则它将打印start。是否有任何语法可以计算我要查找的内容。谢谢 输入数学Python “%”运算符,python,math,Python,Math,我想找出所有的数都可以被1到5之间的数整除。如何编写程序,以便如果“start”的剩余部分除以x经过的所有数字等于0,则它将打印start。是否有任何语法可以计算我要查找的内容。谢谢 输入数学 def main(): one = 1 start = 1 while one == 1: for x in range(1, 5): if start % x == 0: print start
def main():
one = 1
start = 1
while one == 1:
for x in range(1, 5):
if start % x == 0:
print start
start += 1
如果我理解正确,你想要这样的东西:
start = 1
while (True):
flgEvenlyDiv = True
for x in range(1, 5):
if (start % x != 0):
flgEvenlyDiv = False
break
if (flgEvenlyDiv == True):
print start
start += 1
如果我理解正确,你想要这样的东西:
start = 1
while (True):
flgEvenlyDiv = True
for x in range(1, 5):
if (start % x != 0):
flgEvenlyDiv = False
break
if (flgEvenlyDiv == True):
print start
start += 1
首先,你似乎要求所有60的倍数。这些可以像这样轻松渲染(注意,这是一个无限循环): 如果您只是过度简化了您的示例,那么这是您所写内容的更具python风格(也是正确的)解决方案(同样是一个无限循环): 您的原始代码中有一个严重错误:
范围(1,5)
等于[1,2,3,4]
,因此它不会测试一个数字是否可以被5整除
PS:您以前使用过那种疯狂的
one=1
构造,我们向您展示了如何以更好的方式进行编码。请从我们的答案中学习 首先,您似乎要求所有60的倍数。这些可以像这样轻松渲染(注意,这是一个无限循环):
如果您只是过度简化了您的示例,那么这是您所写内容的更具python风格(也是正确的)解决方案(同样是一个无限循环):
您的原始代码中有一个严重错误:范围(1,5)
等于[1,2,3,4]
,因此它不会测试一个数字是否可以被5整除
PS:您以前使用过那种疯狂的
one=1
构造,我们向您展示了如何以更好的方式进行编码。请从我们的答案中学习 这是你真正的问题吗?你真的只是在寻找所有60的倍数吗?几乎完全相同的代码被发布了,确切地说“有没有语法可以计算我要寻找的”应该是什么意思?首先,“是真的”要简洁得多。第二,当前代码看起来已被破坏;对于迭代,x从1增加到4,start从1增加到4,但同时增加。我知道这个例子——这是我在学习QuickBasic时对编程的思考方式。(使用过多的变量来控制循环的状态)这是您真正的问题吗?你真的只是在寻找所有60的倍数吗?几乎完全相同的代码被发布了,确切地说“有没有语法可以计算我要寻找的”应该是什么意思?首先,“是真的”要简洁得多。第二,当前代码看起来已被破坏;对于迭代,x从1增加到4,start从1增加到4,但同时增加。我知道这个例子——这是我在学习QuickBasic时对编程的思考方式。(使用过多变量控制循环状态)
from itertools import count
# put any test you like in this function
def test(number):
return all((number % i) == 0 for i in range(1,6))
my_numbers = (number for number in count() if test(number))
for number in my_numbers:
print number