; round to 5

(define random
  (let* ((a 69069) (c 1234567) (m 4294967296.)
         (seed 20190813))
    (lambda args
      (when (pair? args) (set! seed (modulo (car args) m)))
      (set! seed (modulo (+ (* a seed) c) m))
      (/ seed m))))

(define speeds
  (do ((n 100 (- n 1))
       (xs (list) (cons (+ (* (random) 19) 40) xs)))
      ((zero? n) xs)))

(define (average xs) (/ (apply + xs) (length xs)))

(display (average speeds)) (newline)

(define (round5 x) (inexact->exact (* (floor (/ (+ x 2.5) 5)) 5)))

(display (round5 (average speeds))) (newline)