問題1.22

runtimeは、Gaucheにはないらしいので、『素人くさい〜』から頂いてきました*1
http://www.csus4.net/hiki/SICPReading/?naoya_t+%28naochan%29#l56

(define (runtime)
  (- (time->seconds (current-time)) 1136041200))

ぼくの環境では、

  • 1,000~

1009 *** 2.7179718017578125e-5
1013 *** 2.8133392333984375e-5
1019 *** 2.6941299438476562e-5

  • 10,000~

10007 *** 5.221366882324219e-5
10009 *** 5.2928924560546875e-5
10037 *** 5.412101745605469e-5

  • 100,000~

100003 *** 2.410411834716797e-4
100019 *** 2.410411834716797e-4
100043 *** 2.4008750915527344e-4

  • 1,000,000~

1000003 *** 9.191036224365234e-4
1000033 *** 7.481575012207031e-4
1000037 *** 8.661746978759766e-4

  • 10,000,000~

10000019 *** 0.0033550262451171875

とりあえず平均値。

n Average Ratio
1,000 2.74e-5 -
10,000 5.30e-5 1.93
100,000 2.40e-4 4.52
1,000,000 8.44e-4 3.52
10,000,000 3.35e-3 3.96

sqrt(10) = 3.16

う〜ん、nが大きくなると、だいたいsqrt(10)になるとしていいのかな(落とし穴はなさげ)。

*1:どこが素人なんだよ〜