Averages/Mean angle: Difference between revisions

Content added Content deleted
(Added Easylang)
imported>Chinhouse
No edit summary
Line 1,191: Line 1,191:
mean_angle([10, 20, 30])
mean_angle([10, 20, 30])
ans = 20.000
ans = 20.000
</pre>

=={{header|MiniScript}}==
<syntaxhighlight lang="miniscript">
atan2 = function(y, x)
return 2 * atan((sqrt(x^2 + y^2) - x) / y)
end function

deg2rad = function(x); return x * pi / 180; end function
rad2deg = function(x); return x * 180 / pi; end function

meanAngle = function(angles)
xsum = 0; ysum = 0
for angle in angles
xsum += cos(deg2rad(angle))
ysum += sin(deg2rad(angle))
end for
return rad2deg(atan2(ysum / angles.len, xsum / angles.len))
end function

manyAngledOnes = [[350, 10], [90, 180, 270, 360], [10, 20, 30]]

for angles in manyAngledOnes
mean = meanAngle(angles)
print ["Mean of", angles, "is", mean].join(" ")
end for
</syntaxhighlight>
{{out}}
<pre>
Mean of [350, 10] is 0
Mean of [90, 180, 270, 360] is -90
Mean of [10, 20, 30] is 20.0
</pre>
</pre>