Python 計算1-2+3-4...+99


# 求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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM