文字、ドット、スペース、改行のみを使用して文字列を印刷するプログラムを作成することは、最初は不可能に思えるかもしれませんが、それほど難しくありません。
小文字と大文字はあなたがKernel
方法(print
とputs
など)だけでなく、nil
、false
とtrue
などのkeywordsを呼び出すことができます。点を使用すると、明示的な受信者を使用してメソッドを呼び出すことができます。スペースを使用すると、メソッドに引数を渡すことができます。改行はコマンドを区切ります。
はのは "A" を取得してみましょう:
false #=> false
false.inspect #=> "false"
false.inspect.chars #=> ["f", "a", "l", "s", "e"]
false.inspect.chars.rotate #=> ["a", "l", "s", "e", "f"]
false.inspect.chars.rotate.first #=> "a"
は今印刷 "ABC" をすることができます:
print false.inspect.chars.rotate.first
print false.inspect.chars.rotate.first.succ
print false.inspect.chars.rotate.first.succ.succ
puts
出力:
abc
あなたがアイデアを得ます。
はい、同様の方法でスペース、句読点、数字を印刷することもできます。しかし、私はあなたにそれを残す。利用可能な方法を見て、創造的である。
スペースを使用せずに文字列を印刷する方法を理解するための追加ポイントは、ただ[a-zA-Z.\n]
です。
これは、http://codegolf.stackexchange.comのいい仕事です。 – knut