课程
/后端开发
/Python
/初识Python
0~100求和,为什么这样写运行结果是5151?哪里出了问题?
sum = 0 x = 0 while True: x = x + 1 sum = sum + x if x > 100: break print sum
2014-10-16
源自:初识Python 5-7
正在回答
看了各位的解释,基本上明白了。谢谢(●˘◡˘●)
你的if判断语句有问题,应该是 x == 100的时候break
以x>100为条件的话相当于计算0~101求和。
x为100时, if x>100 不成立, 继续执行一次循环, 此次循环 x为101 并执行了 sum=sum+x 所以结果多了101
加多了个101
sum = 0
x = 0
while True:
if x > 100:
break
sum = sum + x
x = x + 1
print sum
把这两句顺序改变一下结果就是正确的,为什么会这样?
举报
学python入门视频教程,让你快速入门并能编写简单的Python程序