RosettaCodeData/Task/Angle-difference-between-two-bearings/Quackery/angle-difference-between-two-bearings.quackery
2023-07-01 13:44:08 -04:00

30 lines
1 KiB
Text

[ $ "bigrat.qky" loadfile ] now!
[ v- -v
proper rot
360 mod
unrot improper
180 1 2over v< iff
[ 360 1 v- ] done
2dup -180 1 v< if
[ 360 1 v+ ] ] is angledelta ( n/d n/d --> n/d )
' [ [ $ "20" $ "45" ]
[ $ "-45" $ "45" ]
[ $ "85" $ "90" ]
[ $ "-95" $ "90" ]
[ $ "-45" $ "125" ]
[ $ "45" $ "145" ]
[ $ "29.4803" $ "-88.6361" ]
[ $ "-78.3251" $ "-159.0360" ]
[ $ "-70099.74233810938" $ "29840.67437876723" ]
[ $ "-165313.6666297357" $ "33693.9894517456" ]
[ $ "1174.8380510598456" $ "-154146.66490124757" ]
[ $ "60175.773067955546" $ "42213.07192354373" ] ]
witheach
[ do
dip [ $->v drop ]
$->v drop
angledelta
20 point$ echo$ cr ]