30 lines
822 B
Text
30 lines
822 B
Text
module main
|
|
imports native.io.output.say
|
|
|
|
funct get_difference(b1:Float,b2:Float):Float=
|
|
var r:Float=(b2-b1)%360.0
|
|
doif r< -180.0 r=r+360.0
|
|
doif r>=180.0 r=r-360.0
|
|
yield r
|
|
return
|
|
|
|
|
|
say("Input in -180 to +180 range")
|
|
say(get_difference(20.0,45.0))
|
|
say(get_difference(-45.0,45.0))
|
|
say(get_difference(-85.0,90.0))
|
|
say(get_difference(-95.0,90.0))
|
|
say(get_difference(-45.0,125.0))
|
|
say(get_difference(-45.0,145.0))
|
|
say(get_difference(-45.0,125.0))
|
|
say(get_difference(-45.0,145.0))
|
|
say(get_difference(29.4803,-88.6381))
|
|
say(get_difference(-78.3251,-159.036))
|
|
|
|
say("Input in wider range")
|
|
say(get_difference(-70099.74233810938,29840.67437876723))
|
|
say(get_difference(-165313.6666297357,33693.9894517456))
|
|
say(get_difference(1174.8380510598456,-154146.66490124757))
|
|
say(get_difference(60175.77306795546,42213.07192354373))
|
|
|
|
end
|