2012-01-30 18 views
-6

私は以下のコードを持っています。しかし、私はエラーが発生します。これはどのように書かれているはずですか?非常に基本的なRubyの組み込みと取得

puts 'What is your favourite number?' 
number = gets.chomp 
number = number.to_i + 1 
puts "you would like " + number + 'much better' 
+3

-1。それはn00bだからではなく、エラーメッセージが含まれていないからです。 –

+0

特に、エラーメッセージはすでにOPの問題に正確に答えているためです。 –

答えて

6

エラーを含めると常に役立ちます。文字列の数からputs "you would like #{number} much better"

  • 電源を入れ、それを::

    1. が値補間:そのエラー修正するには、2つの方法がありますputs "you would like " + number.to_s + 'much better'

    元、#{...}構文は、の内容を評価し、 Rubyとして中括弧を置き、文字列に注入する前にto_sを結果に適用します。私の2つの例は、文字通り同等です。

    なぜ失敗するのですか? +はRubyで型強制を実行しません。これは、類似の空間内の他の言語とは異なり、実際にはほとんど暗黙の変換が行われません。

  • 関連する問題