不太明白參考代碼,請大神解惑
sum?=?0 x?=?1 n?=?1 while?True: ????if?n?>?20: ????????break ????sum?=?sum?+?x ????x?=?x?*?2 ????n?=?n?+?1 print?sum
這段是參考代碼。但是我的理解,如果x=1開始的話,看代碼不是應該算的是2+4+8一直加20項嗎?似乎和題目要求的1+2+4一直加20項不同?求大神解惑
sum?=?0 x?=?1 n?=?1 while?True: ????if?n?>?20: ????????break ????sum?=?sum?+?x ????x?=?x?*?2 ????n?=?n?+?1 print?sum
這段是參考代碼。但是我的理解,如果x=1開始的話,看代碼不是應該算的是2+4+8一直加20項嗎?似乎和題目要求的1+2+4一直加20項不同?求大神解惑
2018-10-12
舉報
2018-10-12
第一次進入循環是,x=1,先執行sum=sum+x,就是0+1,然后才將x*2
2018-10-12
先看上面的賦值。然后再看第一次進入循環,先判斷n是否大于20,這時候?sum = 0 , x = 1, sum = sum +x?就是?sum = 0 + 1.