我最近开始使用python并尝试了FizzBuzz测试。我想到了这个:
count = 0
while count <= 100:
if (count % 3) == 0:
print "Fizz"
count = count + 1
elif (count % 5) == 0:
print "Buzz"
count = count + 1
elif (count % 5) and (count % 3):
print "FizzBuzz"
count = count + 1
else:
print count
count = count + 1
无输出编号:
^{pr2}$这不是正确的输出。我怎样才能清理程序?在
想想这些陈述发生的顺序
这行代码永远不会执行,因为
^{pr2}$或者
如果这些条件为真,将首先执行。在这个 如果您想检查这些条件是否都是真的, 只有这样,您才应该检查一个单个条件是否为真。在
还有,代码行
出现在代码的每个分支中,请考虑将其放在某个地方 每次都会被执行。在
但是我会选择使用for循环而不是while循环
这样就不需要额外的count变量。在
还有一件事要注意
在这里,您不检查数字%5是否==0,而只是检查(计数%5)。所以表达式“if(count%5)”将导致真if count不被5整除(检查真值测试)。其他地方也一样,省略了==比较器
这里有一个与您的方法类似的例子。在
注意事项:
相关问题 更多 >
编程相关推荐