! PROGRAM P71 ! IMPLICIT NONE CHARACTER (LEN=3) :: SEASON(4,3) INTEGER :: J,KS,M ! ! PRINT *, 'This is Program >> P71 - Matrix input/ouput' ! ! Tell program where data for READ is coming from OPEN(UNIT=5, FILE='P71.DAT') ! UNIT=5 is the default input ! ! ! READ IN MONTH CODE ! ONE PER CARD ! L1: DO KS=1,4 L2: DO M=1,3 READ 27, SEASON(KS,M) END DO L2 END DO L1 27 FORMAT (A3) ! ! PRINT MATRIX ! METHOD 1 ! PRINT 100 PRINT 101, SEASON 101 FORMAT (4(' ',A3)) 100 FORMAT(/' MATRIX OUTPUT 1'/) ! ! METHOD 2 ! PRINT 200 200 FORMAT(/' MATRIX OUTPUT 2'/) L3: DO KS=1,4 PRINT 202, (SEASON(KS,J),J=1,3) END DO L3 202 FORMAT(3(' ',A3)) ! STOP END PROGRAM P71DATA:
Jan 672 3.4 Feb 609 3.2 Mar 715 3.7 Apr 803 4.2 May 810 4.8 Jun 831 5.1 Jul 829 5.1 Aug 727 5.1 Sep 780 4.3 Oct 703 3.9 Nov 791 4.2 Dec 783 3.6OUTPUT:
+--------------------------------------------------+ | 32-bit Power for Lahey Computer Systems | | Phar Lap's 386|DOS-Extender(tm) Version 7.0 | | Copyright (C) 1986-94 Phar Lap Software, Inc. | | Available Memory = 14880 Kb | +--------------------------------------------------+ This is Program >> P71 - Matrix input/ouput MATRIX OUTPUT 1 Jan Apr Jul Oct Feb May Aug Nov Mar Jun Sep Dec MATRIX OUTPUT 2 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
{$G256} {$P512} {$D+} PROGRAM p71 (input, output); VAR season : ARRAY [ 1..4, 1..3 ] OF string[3]; row, column, j : INTEGER; BEGIN writeln ( ^l ); { Read in month code, one per line } FOR row := 1 TO 4 DO FOR column := 1 TO 3 DO readln ( season [ row, column ] ); { Print matrix method 1 } FOR column := 1 TO 3 DO BEGIN FOR row := 1 TO 4 DO write ( season [ row, column ], ' ':2 ); writeln END; { end for } { Print matrix method 2 } writeln; FOR row := 1 TO 4 DO BEGIN FOR column := 1 TO 3 DO write ( season [ row, column ], ' ':2 ); writeln END { end for } END.DATA:
jan 672 3.4 feb 609 3.2 mar 715 3.7 apr 803 4.2 may 810 4.8 jun 831 5.1 jul 829 5.1 aug 727 5.1 sep 780 4.3 oct 703 3.9 nov 791 4.2 dec 783 3.6
Last modified: 22/07/97