code 35111; real procedure SINH(X); value X; real X; begin real AX,Y; AX:= ABS(X); if AX < 0.3 then begin Y:= if AX < 0.1 then X*X else X*X/9; X:= ((( 0.0001984540 * Y + 0.0083333331783 )* Y + 0.16666666666675)* Y + 1.0 )* X ; SINH:= if AX < 0.1 then X else X * ( 1.0 + 0.14814814814815 * X * X ) end else if AX < 17.5 then begin AX:= EXP( AX ); SINH:= SIGN(X) * .5 * ( AX -1/AX ) end else if AX > 742.36063037970 then begin SINH:= SIGN(X)*GIANT end else SINH:= SIGN(X)*EXP(AX- .69314 71805 59945) end SINH; eop