請問這個是哪里有問題呢?謝謝!
num?=?0 sum?=?0 while?num?<=?1000: ????if?num?%?2?==?1: ????????continue ???sum?=?sum?+?num ????num?=?num?+?1 print(sum)
num?=?0 sum?=?0 while?num?<=?1000: ????if?num?%?2?==?1: ????????continue ???sum?=?sum?+?num ????num?=?num?+?1 print(sum)
2021-08-02
舉報
2021-08-02
你下次可以在每次循環都打印一下num和sum,那有你就可以自己發現bug了?,F在的代碼,可以想一下,第一次循環,開始num=0,跑完后sum=0,num=1。第二次開始num=1,然后num&2==1成立,執行continue跳過這次循環開始第三次循環,但第三次num還是等于1,判斷還是成立,這就導致后面變成了死循環了,因為后面num一直都是1,那就永遠小于1000。解決方法很簡單,使用continue前,num也要+1就成
2021-08-02
continue 前要讓num加一,否則你的num一直都是0,一直在執行if 和continue。(continue執行了是會跳過之后的語句不執行直接開始新的循環的)
2021-08-02
continue 前要讓num加一,否則你的num一直都是0,一直在執行if 和continue。(continue執行了是會跳過之后的語句不執行直接開始新的循環的)
2021-08-02
continue 前要讓num加一,否則你的num一直都是0,一直在執行if 和continue。(continue執行了是會跳過之后的語句不執行直接開始新的循環的)