「Rubyがミニツク」の演習問題を解く vol9

buy_ticketsメソッドを定義する演習

演習問題も残り2つです。
やっていきます。

問題

コード例の実行結果が出力例のようになるよう、コード例の中で使われている「buy_tickets」メソッドを定義してください。

1. buy_tickets("Sam", "Dave", "David")
2. buy_tickets("John", "Paul", "Ringo", "George")

出力例

1. Buying a ticket for Sam.
2. Buying a ticket for Dave.
3. Buying a ticket for David.
4. Buying a group ticket for John, Paul, Ringo, George.
私の回答・解説

なんか、前より簡単になってきているような・・・
引数の書き方を知っていればすぐできますね。

模範解答はこちら

1. def buy_tickets(*names)
2.   if names.length > 3
3.     puts "Buying a group ticket for #{names.join(", ")}."
4.   else
5.     names.each do |name|
6.       puts "Buying a ticket for #{name}."
7.     end
8.   end
9. end

いけてますね!

次回は「Toolクラスを継承したHammerクラスを定義する演習」をやります。