Yahoo 知識+ 將於 2021 年 5 月 4 日 (美國東岸時間) 停止服務,而 Yahoo 知識+ 網站現已轉為僅限瀏覽模式。其他 Yahoo 資產或服務,或你的 Yahoo 帳戶將不會有任何變更。你可以在此服務中心網頁進一步了解 Yahoo 知識+ 停止服務的事宜,以及了解如何下載你的資料。
python while-loop的瓶蓋兌換問題?
題目:
有一活動可以用4個瓶蓋換一個全新的飲料,在某人已經有N個瓶蓋的情況下,某人可以跟朋友借一個瓶蓋為前提的,試問某人總共可以喝到多少瓶飲料?
初步想法就是計算商數跟餘數,但是就不知道要怎麼打跟while有關的程式碼了,因此想請問一下大家
1.那如果在加上在活動中總共會擁有的瓶蓋數呢?
2.感謝大家的回答,那若是不使用+= /-=呢?因為還沒學到那個部分
2 個解答
- prisoner26535Lv 73 星期前
# !/usr/bin/env python3
#
caps = int(input("已經有?個瓶蓋: "))
loan = int(input("可以跟朋友借?個瓶蓋: "))
exch = int(input("用?個瓶蓋換一個全新的飲料: "))
bott = 0
while (caps + loan) >= exch :
if caps >= exch:
temp = caps // exch
caps = caps % exch + temp
print('用{0}個瓶蓋換{1}個全新的飲料 剩餘{3}瓶蓋'.format(temp*exch, temp, loan, caps))
bott += temp
else:
temp = (caps + loan) // exch
if (temp + (caps+loan) - (temp * exch)) < loan: break
bott = bott +temp
caps = caps - ((temp * exch) - temp)
print('借{2}個瓶蓋,用{0}個瓶蓋換{1}瓶全新的飲料 龜環{2} 剩餘{3}瓶蓋'.format(temp*exch,temp, loan, caps))
print ('done - 總共可以喝到{0}瓶 共換{1}瓶蓋, 餘{2}瓶蓋.'.format(bott,bott*exch,caps))
- 阿平Lv 53 星期前
以下提供有借有還的解法
def main():
drinks=0
caps=int(input("caps number:"))
exch=int(input("exchange number:"))
while caps>=exch:
new=caps//exch
old=caps%exch
caps=new+old
drinks+=new #drinks=drinks+new
if caps==(exch-1):
drinks+=1 #drinks=drinks+1
caps=0
print("new drinks:",drinks)
if __name__=="__main__":
main()