案例:
python編寫一個程序,寫入一個美金數量,然后顯示出如何用最少的20美元、10美元、5美元和1美元來付款:
Enter a dollar amout:93
$20 bills: 4
$10 bills: 1
$5 bills:0
$1 bills:3
思考:
寫入一個美金數量,就是輸入,所以用input,相關鏈接
Python中的標準輸入-----input()_python中input輸入案例-CSDN博客
用最少的20美元等來付款,就是用幾個20美元付款,也就是93除以20,就是4張20美元,
可以代入我們生活中,有100塊,如果只能用20元的紙幣,那么,需要幾張?--5張
如果只能用10元的紙幣,需要幾張??--10張
所以結合題目要求,就是利用除法,來計算分別可以用多少面值的錢,來付款。
如果輸入的是? 零的整數,那么,就會有余數,比如93,所以,第一次用93/20? ,也就是4張20元,但是93-4*20? ?還有13 ,? 那么13/10,就是有1張10元,還剩下3元。3/5,是沒有的,
那么就接著用1元的,3/1,就是3張1元的。
整體用的最多的,就是一個除法,整除的思維。
每次都是用剩下的錢,再進行一次的兌換,一定要結合自己用紙幣買東西花錢的方式,思考下。
代碼:
#獲取輸入的美元數量 amount = int(input("enter a dollar amount:")) #計算需要的紙幣數量 twenies = amount // 20 amount = amount % 20tens = amount // 10 amount = amount % 10fives = amount // 5 amount = amount % 5ones = amount#輸出結果 print("$20 bills:", twenies) print("$10 bills:", tens) print("$5 bills:", fives) print("$1 bills:", ones)
詳解:
#獲取輸入的美元數量 amount 數量 使用input輸出,int進行數據類型轉換。enter a dollar amount 輸入金額 amount = int(input("enter a dollar amount:")) #計算需要的紙幣數量 twenies = amount // 20 # 整除// 這里的amount,是用總的美元數量,進行除以20面值的 amount = amount % 20 # 取余(取模)% 這里的amount,是代表使用20面值后,剩余的錢,給其他面值(10,5,1)整除用的tens = amount // 10 # 整除// 這里的amount,是用總的美元數量,進行除以10面值的 amount = amount % 10 # 取余(取模)% 這里的amount,是代表使用10面值后,剩余的錢,給其他面值(5,1)整除用的fives = amount // 5 # 整除// 這里的amount,是用總的美元數量,進行除以5面值的 amount = amount % 5 # 取余(取模)% 這里的amount,是代表使用5面值后,剩余的錢,給其他面值(1)整除用的ones = amount # 因為任何除以1,都是其本身,所以 不需要 再寫成 ones = amount // 1,后面沒有其他面值,也不需要再進行取余(取模)%#輸出結果 print("$20 bills:", twenies) print("$10 bills:", tens) print("$5 bills:", fives) print("$1 bills:", ones)
圖示