第三問目である。「1 から 99 までの奇数を足した答えは何か?」
ガウスくんは 「1 から 100 まで足したものから、 2 から 100 までの偶数を引いたものですね。先程の計算から 1 から 100 までの和は 5050 で、1 から 50 までの和は 51 が 25 個あるものが 2 倍されていると数えることができますから、 2 かける 51 かける 25」 と黒板に書き出した。
1 + 2 + 3 + 4 + .... + 97 + 98 + 99 + 100 -( 2 + 4 + 98 + + 100) = 5050 -2 ( 1 + 2 + .... + 49 + 50) = 5050 - 2 * 51 * 25
言葉を続けるガウスくんは、
5050 - 2550 = 2500
「答えは 2500 です。」
一方ルビ緒は、プログラムを作った。method には step もある。飛び飛びに計算してくれるのである。
開始する値.step(終了したい値[, 増える間隔]) do |変数| 変数の処理 end
これを用いて、step_addition_odd.rb を作成した。 ルビ緒の答えも 2500 と出るだろうか?