Ruby ポイント付与(支払い)問題
問題
プリペイドカードのポイント問題です。条件式は下記の通りです。
- 初めにプリペイドカードの残高と支払い回数を記述します。
- プリペイドカードの残額を使うと、 10 % が ポイントとしてたまります。(1ポイント=1円)
- 支払う金額以上のポイントがある場合は、ポイントが優先的に使われます。
point_sum = 0 puts "残高" remainder = gets.to_i puts "支払い回数" m = gets.to_i m.times do puts "支払い金額" pay = gets.to_i if pay <= point_sum point_sum -= pay puts "残高#{remainder} ポイント数#{point_sum}" else remainder -= pay point = pay / 10 point_sum += point puts "残高#{remainder} ポイント数#{point_sum}" end end
m回支払いの処理をして、 pay <= point_sum
ならばポイントを使う処理をしています。