RosettaCodeData/Task/Averages-Mean-angle/EchoLisp/averages-mean-angle.echolisp
2016-12-05 23:44:36 +01:00

14 lines
357 B
Text

(define-syntax-rule (deg->radian deg) (* deg 1/180 PI))
(define-syntax-rule (radian->deg rad) (* 180 (/ PI) rad))
(define (mean-angles angles)
(radian->deg
(angle
(for/sum ((a angles)) (make-polar 1 (deg->radian a))))))
(mean-angles '( 350 10))
→ -0
(mean-angles '[90 180 270 360])
→ -90
(mean-angles '[10 20 30])
→ 20