为了账号安全,请及时绑定邮箱和手机立即绑定

python 之退出循环break

奇怪我用python GUI 编辑如下代码:

sum = 0 

x = 1

while True:

x = x + 2

sum = sum + x 

if x > 100:

break 

print sum 

得出的结果怎么会是2600, 但是我用等差求和公式求0--100的奇数的和,结果是2500,为什么会这样?

正在回答

3 回答

sum = 0 
x = 1
while True:
    if x > 100:
        break 
    x = x + 2
    sum = sum + x 
print sum
这样


1 回复 有任何疑惑可以回复我~
#1

seanzmt 提问者

按你的写法,结果还是2600,还是比直接用求和公式多100.结果没变。
2016-12-07 回复 有任何疑惑可以回复我~
#2

鬼挞r 回复 seanzmt 提问者

sum = 0 x = 1 while x < 100: sum = sum + x x = x + 2 print sum
2016-12-07 回复 有任何疑惑可以回复我~

if x >100  要先判断

0 回复 有任何疑惑可以回复我~

if x>100:

break

放在 x=x+2

sum=sum+x的前面

先判断再相加,不然会多加上100


0 回复 有任何疑惑可以回复我~
#1

seanzmt 提问者

请问多加的那100 是怎么加的? 不是很明白
2016-12-07 回复 有任何疑惑可以回复我~
#2

旭日A 回复 seanzmt 提问者

因为你的判断语句在后面,那么当x=100的时候从上到下会先执行sum=sum+x然后再进行判断,这样不就多加一次100
2016-12-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

python 之退出循环break

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信