支出の追加
CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 81/88。
チャレンジ
簡単前のレッスンの支出トラッカーを基に、「支出の追加」機能を追加しましょう。
プログラムは以下の動作を行う必要があります:
expensesという名前の空の配列を初期化する- メニューを表示し、ユーザーの入力を読み取る
loop doを作成する - ユーザーが
"1"を入力したとき、支出の名前と金額をプロンプトで求め、:nameと:amountをキーに持つハッシュを作成してexpenses配列に追加し、Expense added!と表示する - ユーザーが
"5"を入力したとき、Goodbye!と表示してループを終了する
メニューは以前と全く同じように表示される必要があります:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: オプション "1" が選択されたとき、以下のプロンプトを表示します:
Expense name: 名前を読み取った後に次を表示します:
Amount: すべてのプロンプトには print を使用してください(カーソルが同じ行に留まるようにするため)。金額は to_f を使用して浮動小数点数に変換してください。
プログラムは、メニューの選択肢、そして選択肢が "1" の場合は支出の名前と金額という順序で、複数の入力を連続して受け取ります。
例えば、入力が 1、Coffee、4.50、そして 5 の場合、出力は以下のようになります:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!入力が 1、Lunch、12.99、1、Bus fare、2.50、そして 5 の場合、出力は以下のようになります:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!自分で試してみよう
expenses = []
loop do
puts "\n--- Expense Tracker ---"
puts "1. Add Expense"
puts "2. View Expenses"
puts "3. Total & Average"
puts "4. Clear All"
puts "5. Exit"
print "Choose an option: "
choice = gets.chomp
if choice == "5"
puts "Goodbye!"
break
end
end