前提・実現したいこと
例えば、
t = [1、10、50、70、100] のような配列があり、
2個目以降の数字から1個前の数字を引いた数を求めたいとします。
(回答例)
9
40
20
30
現在、ある問題を解いていて、上記のような回答をプログラムを書いているのですが、
エラーメッセージがでて困っています。
解決できる方がいましたら、お手数ではございますが教えていただければ助かります。
発生している問題・エラーメッセージ
Main.rb:5:in block in <main>': undefined method
-' for nil:NilClass (NoMethodError)
from Main.rb:4:in each' from Main.rb:4:in
<main>'
該当のソースコード
t = readlines.map(&:to_i)
r = t.length
(1..r).each do |i|
puts t[i] - t[i - 1]
end
試したこと
何度もソースコードを書いたり変えたりしましたが、解決しません。
上記のソースコードで動作確認をしたところ、答えが一緒[期待する出力と一緒]にも関わらずエラーが出てしまいます。
補足情報(FW/ツールのバージョンなど)
ruby
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/03 13:12
2020/03/03 13:19
2020/03/03 13:44
2020/03/04 08:00
2020/03/04 12:02
2020/03/04 12:10
2020/03/04 12:46
2020/03/04 12:54
2020/03/04 13:02