while是下面的公式,如果把 sum = sum + x和x = x +2的顺序互换,为什么结果是不一样的呢?

x = 1
sum = 0
while x < 100:
    x = x+2
    sum = sum + x
print(sum)

#打印结果

2600
x = 1
sum = 0
while x < 100:
    sum = sum + x
    x = x+2
print(sum)

#打印结果

2500


息心
浏览 575回答 1
1回答

pardon110

当然不一样,前者是在每次循环变量+2基础上求sum和,后者只是每次循环变量与和的累加换句话而言,顺序不同sum求和如下sum = sum + x+2  # 每次求和在当前循环变量基础上+2 sum = sum + x    # 每次求和只是与当前循环变量相加即同样的循环次数,循环变量,前者sum每次累加值比后者大2, 最终前者比后者sum多 2 * 循环次数x = x+2 sum = sum + x  # 此处的x 已变成了 当前循环变量x + 2, x已经不是当前循环变量的值sum = sum + x x = x+2       # 尽管x发生了变化,但与sum没关系,sum只与当前循环变量x发生关系了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python