Averages/Mean angle: Difference between revisions

Content added Content deleted
m (made R solution just submitted by me slightly more general)
Line 373: Line 373:


(defun degrees (angle)
(defun degrees (angle)
(* 180 (/ 1 pi) angle))
(* (/ 180 pi) angle))


(defun mean-angle (angles)
(defun mean-angle (angles)
Line 382: Line 382:


(loop for angles in '((350 10) (90 180 270 360) (10 20 30))
(loop for angles in '((350 10) (90 180 270 360) (10 20 30))
do (format t "~&The mean angle of ~a is ~$°." angles (mean-angle angles)))</lang>
do (format t "~&The mean angle of ~a is ~$°." angles (mean-angle angles)))

;; or using complex numbers (cis and phase)

(defun mean-angle-2 (angles)
(degrees (phase (reduce #'+ angles :key (lambda (deg) (cis (radians deg)))))))
</lang>
{{out}}
{{out}}
<pre>The mean angle of (350 10) is -0.00°.
<pre>The mean angle of (350 10) is -0.00°.