Jump to content

Angle difference between two bearings: Difference between revisions

Using Real Math module
(Added solution for Action!)
(Using Real Math module)
Line 135:
=={{header|Action!}}==
{{libheader|Action! Tool Kit}}
{{libheader|Action! Real Math}}
<lang Action!>INCLUDE "D2H6:REALREALMATH.ACT" ;from the Action! Tool Kit
 
INT FUNC AngleI(INT a1,a2)
Line 151 ⟶ 152:
PrintF("%I .. %I = %I%E",a1,a2,r)
RETURN
 
BYTE FUNC GreaterOrEqual(REAL POINTER left,right)
REAL diff
BYTE ARRAY x
 
RealSub(left,right,diff)
x=diff
IF (x(0)&$80)=$00 THEN
RETURN (1)
FI
RETURN (0)
 
PROC AngleR(REAL POINTER r1,r2,r)
Line 172 ⟶ 161:
 
RealSub(r2,r1,r)
WHILE GreaterOrEqualRealGreaterOrEqual(r,r180)
DO
RealSub(r,r360,tmp) RealAssign(tmp,r)
OD
WHILE GreaterOrEqualRealGreaterOrEqual(rm180,r)
DO
RealAdd(r,r360,tmp) RealAssign(tmp,r)
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.