Python 練習一(計算1-2+3-4...+99)
阿新 • • 發佈:2019-03-03
想要 增加 偶數 減法 pre 記錄 相反數 span 保持
# 求1-99的所有數的和 count = 1 s = 0 while count < 100: s += count count += 1 print(s)
當都為正數時,即1+2+3+...+99,如上,很簡單;
其實,計算正負相間的式子也很簡單,只需要加上一個標記正負號的變量乘到計數器上即可。
count = 1 s = 0 sign = 1 # 用來標記正負號 while count < 100: s += sign * count sign = -sign #每次執行累加後,把標記賦值為相反數 count += 1 print(s)
用一個布爾型變量來記錄執行加法還是減法,也能達到同樣的效果(這裏額外增加一個要求,就是剔除某個數後,保持正負相間的累加)
is_add = True # 最開始0+1是加法,所以初值為True count = 1 s = 0 while count < 100: if count != 88: # 把想要剔除的數拒之門外,讓計數器下去默默加1 if is_add: s += count is_add = False # 執行加法後,下一次是減法 else: s-= count is_add = True # 執行減法後,下一次是加法 count += 1 print(s)
這樣,得到的就是1-2+3-4...+87-89+90...+98-99的結果
另一種簡單的思路,判斷計數器的奇偶,奇數加,偶數減
s = 0 count = 1 while count <= 99: if count % 2 == 0: s -= count else: s += count count += 1 print(s)
Python 練習一(計算1-2+3-4...+99)