home *** CD-ROM | disk | FTP | other *** search
Modula Implementation | 1994-09-28 | 1.2 KB | 58 lines |
- (* @P- @B- *)
- IMPLEMENTATION MODULE InOut ;
-
- FROM SYSTEM IMPORT ADR ;
- IMPORT StdIO ;
-
- PROCEDURE Write( ch : CHAR ) ;
- BEGIN StdIO.printf("%c",ch)
- END Write ;
-
- PROCEDURE WriteLn ;
- BEGIN StdIO.printf("\n")
- END WriteLn ;
-
- PROCEDURE WriteString( str : ARRAY OF CHAR ) ;
- BEGIN StdIO.printf("%s",str) ;
- END WriteString ;
-
- PROCEDURE WriteInt( x : LONGINT ; n : INTEGER ) ;
- BEGIN StdIO.printf("%*d",n,x)
- END WriteInt ;
-
- PROCEDURE WriteOct( x : LONGINT ; n : INTEGER ) ;
- BEGIN StdIO.printf("%*o",n,x)
- END WriteOct ;
-
- PROCEDURE WriteHex( x : LONGINT ; n : INTEGER ) ;
- BEGIN StdIO.printf("%*X",n,x)
- END WriteHex ;
-
- PROCEDURE Read( VAR ch : CHAR ) ;
- VAR i : LONGINT ;
- BEGIN
- i := StdIO.fgetc( StdIO.stdin ) ;
- done := i # StdIO.EOF ;
- ch := CHR( i ) ;
- END Read ;
-
- PROCEDURE ReadString( VAR str : ARRAY OF CHAR ) ;
- BEGIN StdIO.fgets( ADR(str) , HIGH(str)+1 , StdIO.stdin )
- END ReadString ;
-
- PROCEDURE ReadInt( VAR x : INTEGER ) ;
- BEGIN
- done := StdIO.scanf( "%hd" , ADR(x) ) = 1 ;
- IF ~done THEN StdIO.fflush( StdIO.stdin ) END ;
- END ReadInt ;
-
- PROCEDURE ReadLongInt( VAR x : LONGINT ) ;
- BEGIN
- done := StdIO.scanf( "%d" , ADR(x) ) = 1 ;
- IF ~done THEN StdIO.fflush( StdIO.stdin ) END ;
- END ReadLongInt ;
-
- (* I told you it was crude *)
-
- END InOut.
-