; boxing the compass

(define (compass d)
  (define compass-points
    '#(N NNE NE ENE E ESE SE SSE
       S SSW SW WSW W WNW NW NNW))
  (vector-ref compass-points
    (modulo (inexact->exact (floor (/ (+ d 11.25) 22.5))) 16)))

(display (compass 70)) (newline)
(display (compass 230)) (newline)