Anonymous user
Category:Action! Real Math: Difference between revisions
→REALMATH.ACT
(Created page with "=== REALMATH.ACT === The following module has been prepared for RosettaCode to provide basic functions and procedures related to floating point numbers which are missing or i...") |
|||
Line 115:
PROC Trunc(REAL POINTER x,res)
BYTE ARRAY b
REAL tmp1,tmp2▼
exp=b(0)&$7F
IF exp<=67 THEN
b(5)=0
IF exp<=66 THEN b(4)=0 FI
RealSub(x,half,tmp1)▼
IF exp<=65 THEN b(3)=0 FI
IF exp<=64 THEN b(2)=0 FI
IF exp<=63 THEN b(0)=0 b(1)=0 FI
FI
RETURN
Line 134 ⟶ 135:
Trunc(x,t)
RealSub(x,t,res)
RETURN
PROC RealDivInt(REAL POINTER x,n,res)
RealDiv(x,n,r)
Trunc(r,res)
RETURN
PROC RealMod(REAL POINTER x,n,res)
RealDivInt(x,n,res)
RealMult(res,n,res)
RETURN
|