INCLUDE "H6:REALMATH.ACT" PROC Agm(REAL POINTER a0,g0,result) REAL a,g,prevA,tmp,r2 RealAssign(a0,a) RealAssign(g0,g) IntToReal(2,r2) DO RealAssign(a,prevA) RealAdd(a,g,tmp) RealDiv(tmp,r2,a) RealMult(prevA,g,tmp) Sqrt(tmp,g) IF RealGreaterOrEqual(a,prevA) THEN EXIT FI OD RealAssign(a,result) RETURN PROC Main() REAL r1,r2,tmp,g,res Put(125) PutE() ;clear screen MathInit() IntToReal(1,r1) IntToReal(2,r2) Sqrt(r2,tmp) RealDiv(r1,tmp,g) Agm(r1,g,res) Print("agm(") PrintR(r1) Print(",") PrintR(g) Print(")=") PrintRE(res) RETURN