LoginSignup
0
0

More than 5 years have passed since last update.

CODEPREPで勉強(2019/2/12)

Last updated at Posted at 2019-02-12

初めての投稿

CODEPREP「Ruby 配列・Hash・Class 操作演習」1-2

問題文が「1からnまで数値を要素に持つ配列を返す create_array メソッドを実装しましょう。」だったので
まず作ってみましたが

def create_array(n)

if n <= 0
array = []
return array
else
array = Array.new(n){|a| a}
end
end
これだと
メソッド create_array(10) の返り値は "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]" でした。期待される値は "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]" です。
となってしまいました。

なので
array = Array.new(n+1){|a| a}
としましたが
それだと今度は
メソッド create_array(10) の返り値は "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]" でした。期待される値は "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]" です。
となり、最後の要素は10が出るが、最初の要素が0のままでした。(そもそも配列の要素数が1個増えてしまう。}

最後に
array = Array.new(n){|a| a+1}
でうまく表示された。

CODEPREPの演習問題は答え合わせがないので、合っているのか不安になります。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0