問題
指定した金額を100円玉と10円玉と5円玉と1円玉だけで、できるだけ少ない枚数で支払いたい。
金額を入力するとそれぞれの枚数を計算して表示するプログラムを作りなさい。
ヒント
ヒント1:コンソール入力方法
コンソールに入力する際は下記のソースを使ってください。
1 2 |
print( "金額を入力してください" ); price = int( input() ); |
答え
答え
1 2 3 4 5 6 7 8 9 10 11 |
# 100円、10円、5円、1円で分ける def cal(kane = input("金を入力してください")): list = [100, 10, 5, 1] # 入る金の数のための配列 kane = int(kane) # 金はstrで入るから、あれをintで変更 for i in range(0, len(list)): # list全てで分けるための反復門 a = int(kane / list[i]) # aはできるだけ少ない枚数、あれが分け前 print(list[i],"円: " , a) kane = kane % list[i] # 次の配列の数で残ってる金を分けるためkaneを残りで変わる cal() |
コメント