看板 Python 關於我們 聯絡資訊
小弟剛學習python不久 最近學了到了迴圈部分 有一題的題目如下 1/3+3/5+5/7+7/9+9/11........+(n-2)/(n) 用迴圈計算它的總和 樣本: 輸入:99 輸出:total=45.12445 程式如下: n=eval(input()) total=0 for i in range(n,2,-2): total+=(i-2)/i print("total=%.5f" %(total)) 我不懂的是range(n,2,-2)這句 我有去查過像是range(1,30,5) 就會有5.10.15.20.25 可是n假如為99 不就等於99到2之間-2的值,可是之間並沒有-2的值 麻煩大家幫我解惑了 感恩! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.96.113.37 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1532670605.A.FA8.html
ThxThx: 你有確定過range(1, 30, 5)是你講的那樣? 07/27 13:53
djshen: 你應該去查range三個參數是什麼 07/27 14:04
TuCH: 試著用 print(list(range(1,30,5)) 和list(range(99,2,-2)) 07/27 14:04
TuCH: 驗證自己的想法 07/27 14:04
IAMPF: 請不要用eval你可以用int(input()) 07/27 14:34
renshin: 99到2之間,遞減2。推3樓,直接print出來你會很清楚 07/27 16:35
ChangYuuuuuu: 感謝大家的回答,我已經搞懂囉 謝謝! 07/29 11:38