iT邦幫忙

0

Python程式迴圈怎麼寫

  • 分享至 

  • xImage

程式新手 請大家指教指教?

題目:
使用者輸入每個月的存款,程式逐月列出總存款,直到達到100萬元
例如: 輸入每月存款: 50000
第1個月,50000元
第2個月,100000元
第3個月,150000元

這是自己已經先寫的部分,可能錯很多:
n = int(input ("請輸入每月存款:"))
m=1
m=m+1
for i in range(n,1000000,n):
print("第%d個月,%d元" %(m,n))

求高手指點

Han iT邦研究生 1 級 ‧ 2021-10-19 18:08:16 檢舉
作業加油
foodchain iT邦新手 3 級 ‧ 2021-10-19 18:08:49 檢舉
如果是要一筆一筆的輸入 建議用 while()
像是這樣:
salary = 0 # 代表每個月的存款
deposit = 0 # 代表總存款
month = 0 # 第幾個月
while (deposit <= 1000000):
salary = int(input())
deposit += salary
month += 1
print("第%d個月,%d元" % (month, deposit))
(下面四行要縮排)
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

2
海綿寶寶
iT邦大神 1 級 ‧ 2021-10-19 19:53:15
cnt = 0
sum = 0
n = int(input ("請輸入每月存款:"))
while True:
    cnt = cnt + 1
    sum = sum + n
    print("第 %d 個月,%d 元" % (cnt, sum))
    if (sum >= 1000000):
        break
2
一級屠豬士
iT邦大師 1 級 ‧ 2021-10-19 20:07:51

把發問者的程式做了一點修改

#!/usr/bin/env python
# -*- coding: utf-8 -*-

n = int(input ("請輸入每月存款:"))

m = 0

for i in range(n,1000000,n):
  m=m+1
  print("第%d個月,%d元" %(m,i))

然後模擬一下,執行的情況.
https://ithelp.ithome.com.tw/upload/images/20211019/20050647z16WyeuZPu.png

思路不錯,語法還欠熟悉.但是有沒有觀察到,這樣子設計的缺點與不足了.
參考看看.可以比較這樣的寫法,與海綿寶寶的寫法,執行時的一些差異.

區區小式,何足煩勞大師出手
/images/emoticon/emoticon62.gif

https://ithelp.ithome.com.tw/upload/images/20211019/20050647LxzwusLvhu.jpg

/images/emoticon/emoticon66.gif

我要發表回答

立即登入回答