fork download
  1. ; round to 5
  2.  
  3. (define random
  4. (let* ((a 69069) (c 1234567) (m 4294967296.)
  5. (seed 20190813))
  6. (lambda args
  7. (when (pair? args) (set! seed (modulo (car args) m)))
  8. (set! seed (modulo (+ (* a seed) c) m))
  9. (/ seed m))))
  10.  
  11. (define speeds
  12. (do ((n 100 (- n 1))
  13. (xs (list) (cons (+ (* (random) 19) 40) xs)))
  14. ((zero? n) xs)))
  15.  
  16. (define (average xs) (/ (apply + xs) (length xs)))
  17.  
  18. (display (average speeds)) (newline)
  19.  
  20. (define (round5 x) (inexact->exact (* (floor (/ (+ x 2.5) 5)) 5)))
  21.  
  22. (display (round5 (average speeds))) (newline)
Success #stdin #stdout 0s 7988KB
stdin
Standard input is empty
stdout
49.5560797151504
50