From: Wolfgang Seeberg <wolfgang.seeberg@yahoo.com>
Date: April 23, 2007 8:44:04 AM CDT
To: submission@rubyquiz.com
Subject: Please Forward: Ruby Quiz Submission# Usage: ruby q121.rb
# displays all possible letter sequences for a line of morse code.Morsehash = Hash[*%w(
a .- b -... c -.-. d -.. e . f ..-. g --.
h .... i .. j .--- k -.- l .-.. m -- n -.
o --- p .--. q --.- r .-. s ... t - u ..-
v ...- w .-- x -..- y -.-- z --..
)]Dictionary = Hash[*%w(ruby i ieee sos).collect{ | x | [x, 1] }.flatten]
def eat(morsecode, string = "")
if morsecode == ""
printf " in dictionary: " if Dictionary.has_key?(string)
puts string
else
Morsehash.each do | letter, code |
if morsecode[0, code.size] == code
eat(morsecode[code.size .. -1], string + letter)
end
end
end
endSTDERR.printf "enter morse code: "
while gets
eat($_.tr("^---.", ""))
end#-------------------- End ---------------------------
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
···
Begin forwarded message: