P72.F90

Matrix summary


!
! =====> Program - P72.F90
!
!
!     DEFINE 3 MATRICES
!     AND AUXILLIARY ARRAYS
!
      CHARACTER (LEN=3) :: SEASON(4,3)
      INTEGER   ::  NUMBER(4,3),NCOL(3),CMEAN(3)
      REAL      ::  REVENU(4,3),RCOL(3),DMEAN(3)
!
!
      PRINT *, 'This is Program >> P72  - Matrix summary'
!
!     Tell program where data for  READ *  is coming from
      OPEN(UNIT=5, FILE='P72.DAT')      ! UNIT=5 is the default input
!
!
!     READ IN DATA
!     12 LINES IN MONTH ORDER
!
L1:    DO  KS=1,4
L2:      DO  M=1,3
            READ 127,SEASON(KS,M),  &
            NUMBER(KS,M),REVENU(KS,M)
         END DO L2
       END DO L1
 127  FORMAT(A3,I7,F5.1)
      PRINT 1
   1  FORMAT(/' SEASONAL SUMMARY')
!
!     DO 4 QUARTER AVERAGE + TOTALS
!
      NGRAND=0
      RGRAND=0.0
L3:   DO  KS=1,4
         NTOTAL=0
         RTOTAL=0.0
L4:         DO  J=1,3
              NTOTAL=NTOTAL+NUMBER(KS,J)
              RTOTAL=RTOTAL+REVENU(KS,J)
            END DO L4
         NGRAND=NGRAND+NTOTAL
         RGRAND=RGRAND+RTOTAL
         NAVE=NTOTAL/3
         RAVE=RTOTAL/3.0
         PRINT 220,(SEASON(KS,J),J=1,3)
         PRINT 230,(NUMBER(KS,J),J=1,3),  &
                    NTOTAL,NAVE
         PRINT 240,(REVENU(KS,J),J=1,3),  &
                    RTOTAL,RAVE
     END DO L3
 220  FORMAT(/ 3(5X,A3),3X,  &
             'TOTAL',5X,'AVE')
 230  FORMAT(5I8)
 240  FORMAT(2X,5(F6.1,'M$'))
!
!     DO SAME CALCULATIONS
!     FOR EACH COLUMN
!
L5:   DO  KOL=1,3
           NCOL(KOL)=0
           RCOL(KOL)=0.0
L6:        DO  KROW=1,4
               NCOL(KOL)=NCOL(KOL)+NUMBER(KROW,KOL)
               RCOL(KOL)=RCOL(KOL)+REVENU(KROW,KOL)
           END DO L6
           CMEAN(KOL)=NCOL(KOL)/4
           DMEAN(KOL)=RCOL(KOL)/4.0
      END DO L5
      NGAVE=NGRAND/12
      RGAVE=RGRAND/12.0
!
!     OUTPUT COLUMN STATISTICS
!
      PRINT 410,NCOL,NGRAND,NGAVE
      PRINT 420,RCOL,RGRAND,RGAVE
      PRINT 430,CMEAN,DMEAN
 410  FORMAT(/ 40('-')/  &
               5I8)
 420  FORMAT(2X,5(F6.1,'M$')/)
 430  FORMAT(/3I8,'    COLUMN AVERAGE'/  &
            2X,3(F6.1,'M$')// 40('=')//)
      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

OUTPUT:
[FTN90 Version 1.12 Copyright (c)SALFORD SOFTWARE LTD 1992  &  ]
[                   (c)THE NUMERICAL ALGORITHMS GROUP 1991,1992]
    NO ERRORS  [FTN90]
Program entered
 This is Program >> P72  - Matrix summary

 SEASONAL SUMMARY

     Jan     Feb     Mar   TOTAL     AVE
     672     609     715    1996     665
     3.4M$   3.2M$   3.7M$  10.3M$   3.4M$

     Apr     May     Jun   TOTAL     AVE
     803     810     831    2444     814
     4.2M$   4.8M$   5.1M$  14.1M$   4.7M$

     Jul     Aug     Sep   TOTAL     AVE
     829     727     780    2336     778
     5.1M$   5.1M$   4.3M$  14.5M$   4.8M$

     Oct     Nov     Dec   TOTAL     AVE
     703     791     783    2277     759
     3.9M$   4.2M$   3.6M$  11.7M$   3.9M$

----------------------------------------
    3007    2937    3109    9053     754
    16.6M$  17.3M$  16.7M$  50.6M$   4.2M$


     751     734     777    COLUMN AVERAGE
     4.2M$   4.3M$   4.2M$

========================================

Come back to the previous page

Page builder: Charles Boivin

Last modified: 11/07/95