first commit
This commit is contained in:
commit
f6abf65e91
10 files changed
+346
No files matched your search
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
class MegaGreeter
|
||||
attr_accessor :names
|
||||
|
||||
def initialize(names = "World")
|
||||
@names = names
|
||||
end
|
||||
|
||||
def say_hi
|
||||
if @names.nil?
|
||||
puts "..."
|
||||
elsif @names.respond_to?("each")
|
||||
@names.each do |name|
|
||||
puts "Hello #{name}!"
|
||||
end
|
||||
else
|
||||
puts "Hello #{@names}!"
|
||||
end
|
||||
end
|
||||
|
||||
def say_bye
|
||||
if @names.nil?
|
||||
puts "..."
|
||||
elsif @names.respond_to?("join")
|
||||
puts "Goodbye #{@names.join(", ")}. Come back soon!"
|
||||
else
|
||||
puts "Goodbye #{@names}. Come back soon!"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if __FILE__ == $PROGRAM_NAME
|
||||
greeter = MegaGreeter.new
|
||||
greeter.say_hi
|
||||
greeter.say_bye
|
||||
|
||||
greeter.names = "Zeke"
|
||||
greeter.say_hi
|
||||
greeter.say_bye
|
||||
|
||||
greeter.names = ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]
|
||||
greeter.say_hi
|
||||
greeter.say_bye
|
||||
|
||||
greeter.names = nil
|
||||
greeter.say_hi
|
||||
greeter.say_bye
|
||||
end
|
||||
Reference in new issue
Block a user