本の追加
CoddyのRubyジャーニー「ロジックとフロー」セクションの一部 — レッスン 29/56。
メニューループに 1. Add Book オプションを追加します。ユーザーがそれを選択したときに、本のタイトル、著者、ジャンルを入力するように促し、新しいハッシュを library 配列にプッシュします。
すべての本は未読の状態で始まります (read: false)。
チャレンジ
簡単メニューのループを拡張します。選択肢が "1" の場合、以下の処理を行います:
Title:というプロンプトをprintし、タイトルを読み取りますAuthor:をprintし、著者を読み取りますGenre:をprintし、ジャンルを読み取ります- ハッシュ
{ title:, author:, genre:, read: false }をlibraryにプッシュします Book added!を表示します
前のレッスンと同様に 5. Exit の動作(Goodbye! を表示してループを抜ける)を維持してください。
入力が 1、The Hobbit、Tolkien、Fantasy、そして 5 の場合、出力の最後は以下のようになります:
Choose an option: Title: Author: Genre: Book added!
--- Library Manager ---
...
Choose an option: Goodbye!チートシート
push を使用して、ハッシュで配列に本を追加する:
print "Title: "
title = gets.chomp
print "Author: "
author = gets.chomp
print "Genre: "
genre = gets.chomp
library.push({ title: title, author: author, genre: genre, read: false })
puts "Book added!"自分で試してみよう
library = []
loop do
puts "--- Library Manager ---"
puts "1. Add Book"
puts "2. Search By Title"
puts "3. Filter By Genre"
puts "4. Mark As Read"
puts "5. Exit"
print "Choose an option: "
choice = gets.chomp
if choice == "5"
puts "Goodbye!"
break
end
# TODO: choice == "1" の処理、タイトル/著者/ジャンルの入力を促す、
# ハッシュを library に追加し、"Book added!" と表示する
end
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。