while循環
sum = 0
x = 1
n = 1
while True:
? ? x = 2**(n-1)
? ? n = n+1
? ? sum =sum+x
? ? if n>20:
? ? ? ? break
print sum
sum = 0
x = 1
n = 1
while True:
? ? sum=sum+x
? ? x=2**n
? ? n=n+1
? ? if n>20:
? ? ? ? break
print sum
這兩段程序的運行結果為什么是一致的??
sum = 0
x = 1
n = 1
while True:
? ? x = 2**(n-1)
? ? n = n+1
? ? sum =sum+x
? ? if n>20:
? ? ? ? break
print sum
sum = 0
x = 1
n = 1
while True:
? ? sum=sum+x
? ? x=2**n
? ? n=n+1
? ? if n>20:
? ? ? ? break
print sum
這兩段程序的運行結果為什么是一致的??
2015-06-17
舉報
2015-06-17
一個是-1一個沒減一。。前面一個計算了后馬上就加給sum了。后一個的x是計算了下一次加用的,因為判斷n=20的時候上面一個計算了馬上就加給sum了,后面一個計算了并沒有加給sum,所以就一樣了。