| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- DEFINITION MODULE RealIO;
- (* Input and output of real numbers in decimal text form over specified
- channels.
- The read result is of type IOConsts.ReadResults.
- *)
- FROM IOLink IMPORT ChanId;
- (* The text form of a signed fixed-point real number is
- ["+"|"-"], decimal digit, {decimal digit}, [".", {decimal digit}] *)
- (* The text form of a signed floating-point real number is
- signed fixed-point real number,
- "E", ["+"|"-"], decimal digit, {decimal digit} *)
- PROCEDURE ReadReal ( cid : ChanId;
- VAR real : REAL);
- (* Skips leading spaces and removes any remaining characters
- that form part of a signed fixed or floating point number.
- A corresponding value is assigned to the parameter real.
- The real result is set to the value allRight, outOfRange, wrongFormat,
- endOfLine, or endOfInput. *)
- PROCEDURE WriteFloat (cid : ChanId;
- real : REAL;
- sigFigs : CARDINAL;
- width : CARDINAL);
- (* Writes the value of the parameter real in floating-point text form
- with sigFigs significant figures in a field of the given minimum width. *)
- PROCEDURE WriteEng (cid : ChanId;
- real : REAL;
- sigFigs : CARDINAL;
- width : CARDINAL);
- (* As for WriteFloat except that the number is scaled with one to
- three digits in the whole number part and with an exponent that is
- a multiple of three. *)
- PROCEDURE WriteFixed (cid : ChanId;
- real : REAL;
- place : INTEGER;
- width : CARDINAL);
- (* Writes the value of the parameter real in fixed-point text form,
- rounded to the given place relative to the decimal point,
- in a field of the given minimum width. *)
- PROCEDURE WriteReal (cid : ChanId;
- real : REAL;
- width : CARDINAL);
- (* Writes the value of real as WriteFixed if the sign and magnitude
- can be shown in the given width, otherwise as WriteFloat.
- The number of places or significant digits depend on the given width. *)
- END RealIO.
-
-
|