20 lines
573 B
Text
20 lines
573 B
Text
with javascript_semantics
|
|
constant units = {"degrees","gradians","mils","radians"},
|
|
turns = {1/360,1/400,1/6400,0.5/PI}
|
|
|
|
function convert(atom a, unit, tgt)
|
|
return remainder(a*unit,1)/tgt
|
|
end function
|
|
|
|
constant tests = {-2,-1,0,1,2,2*PI,16,57.2957795,359,399,6399,1000000}
|
|
printf(1," angle unit %9s %9s %9s %9s\n",units)
|
|
for t in tests do
|
|
for i,u in turns do
|
|
printf(1,"%9g %-8s",{t,units[i]})
|
|
for tgt in turns do
|
|
printf(1," %9g",convert(t,u,tgt))
|
|
end for
|
|
puts(1,"\n")
|
|
end for
|
|
puts(1,"\n")
|
|
end for
|