47337


結果の合計の方法について質問です。

[code]

    num = 0
    10.times do
      num += 1
      p num
    end
    
[/code]

上記を実行すると結果が1から10まで帰ってきますが、その1から10までの合計を出したいのですが上手い方法が思いつきません。  
何か方法がありましたら教えて頂きたいです。


CC BY-SA 4.0
2018-08-08T00:36:43.063
47336
2018-11-09T13:36:40.880
2018-08-08T09:27:53.087
3060
29121
question
ruby
数値の合計を計算する方法について


「合計を求める用」の変数を用意し、その変数に数字を足し合わせていけばよさそうです。

[code]

    num = 0
    sum = 0
    10.times do
        num += 1
        sum += num
        p num
    end
    p sum
    
[/code]


CC BY-SA 4.0
2018-08-08T00:45:35.277
47337
2018-08-08T00:45:35.277
3060
47336
answer


timesを使う場合、回数を取得出来るのでそれを利用すると変数を使わなくてもよさそうです。

[code]

    sum = 0
    10.times do |i|
        sum += i+1
        p i + 1
    end
    p sum
    
[/code]

また1から10まで、というのを明確にしたい場合は`upto`を使うのも手かと思います。

[code]

    sum = 0
    1.upto(10) do |i|
        sum += i
        p i
    end
    p sum
    
[/code]

逆の場合は`downto`というものもあります。

[code]

    10.downto(1) do |i|
        p i
    end
    
[/code]


CC BY-SA 4.0
2018-08-08T19:44:04.470
47364
2018-08-09T02:00:53.943
2018-08-09T02:00:53.943
29553
28772
47336
answer

[code]

    (1..10).reduce {|sum, i| sum + i }
    
[/code]


CC BY-SA 4.0
2018-11-09T13:36:40.880
50133
2018-11-09T13:36:40.880
30913
47336
answer