realinou.mod 555 B

123456789101112131415161718192021222324252627282930
  1. (*$V-*)
  2. IMPLEMENTATION MODULE RealInOut ;
  3. (* Core library interface *)
  4. IMPORT IO,Str,InOut ;
  5. PROCEDURE ReadReal ( VAR v : REAL ) ;
  6. VAR s : ARRAY[0..80] OF CHAR;
  7. r,a : LONGREAL;
  8. BEGIN
  9. InOut.ReadString( s );
  10. r := Str.StrToReal( s,Done );
  11. a := ABS( r );
  12. Done := Done AND (a >= 1.2E-38 ) AND (a <= 3.4E38 );
  13. v := REAL(r) ;
  14. END ReadReal;
  15. PROCEDURE WriteReal ( v : REAL ; w : CARDINAL ) ;
  16. BEGIN
  17. IO.WrReal(v,MAX(CARDINAL),INTEGER(w)) ;
  18. Done := IO.OK ;
  19. END WriteReal ;
  20. BEGIN
  21. Done := TRUE ;
  22. END RealInOut.
  23.