世界のナベアツ問題を Ruby で書いて、さらに Mac にしゃべらせてみた。
nabeatsu.rb
$KCODE='u' def nabe(num) if num % 3 == 0 return true end if num.to_s.match('3') return true else return false end end endnum = ARGV[0] for i in 1..endnum.to_i if nabe(i) puts "#{i} なべ" system("say -v Cellos #{i}") else puts "#{i}" system("say -v Fred #{i}") end end実行方法
ruby nabeatsu.rb 100
これで、Mac(say コマンド) が "3"の倍数と"3"のつく数字をアホになって喋ってくれます。
プログラム自体は、数字を文字列に変換して match して数学的に解いていません。実装が簡単な方を選びました。