ある級数の収束

$\sum_{k=1}^{\infty}\frac{k}{2^k} = 2$を実験的に調べてみます。

sum = Rational(0, 1)
n = 1
p = 2
while n < 50
  sum += Rational(n, p)
  p sum.to_f
  n += 1
  p *= 2
end

実行結果です。

0.5
1.0
1.375
1.625
1.78125
1.875
1.9296875
1.9609375
1.978515625
1.98828125
1.99365234375
1.99658203125
1.9981689453125
1.9990234375
1.99948120117188
1.99972534179688
1.99985504150391
1.99992370605469
1.99995994567871
1.99997901916504
1.99998903274536
1.9999942779541
1.99999701976776
1.99999845027924
1.9999991953373
1.99999958276749
1.99999978393316
1.99999988824129
1.999999942258
1.99999997019768
1.99999998463318
1.99999999208376
1.99999999592546
1.99999999790452
1.99999999892316
1.99999999944703
1.99999999971624
1.99999999985448
1.99999999992542
1.9999999999618
1.99999999998045
1.99999999999
1.99999999999488
1.99999999999739
1.99999999999866
1.99999999999932
1.99999999999965
1.99999999999982
1.99999999999991