C.....PLO-MI-MO STATISTIK C......AUFTRAGGEBER HERR MILLER C......EMPFAENGER HERR DR.MOELLER C....1EBER DEN PLOTTTER 1627 DIMENSION KSAT(64),KPLOT(31,72),KSUM(31,3),KLEER(31),ZEIL(72) DATA KPLO /Z0020/,KBLA/' '/, 2KPKT/' .'/,KUND/Z10101010/,KSTRI/Z1C1C1C1C/ EQUIVALENCE (KSAT(47),KUN(1)) EQUIVALENCE (KH(5),JAHR),(KH(6),MTAG),(KH(1),KSAT(1)) INTEGER *2 KUN(32),JAHR,MTAG,KH(128) DO 10 I = 1,31 KLEER(I) = KBLA 10 CONTINUE DO 20 I = 1,72 ZEIL(I) = I / 3. 20 CONTINUE KEND = 0 READ(10) KSAT CALL TAG(JAHR,MTAG,MONAT) GO TO 600 50 READ(10,END=900) KSAT CALL TAG(JAHR,MTAG,MONAT) IF(MON-MONAT) 500,100,500 100 DO 101 I =1,32 IF (KUN(I) - KPLO ) 101,110,101 101 CONTINUE GOTO 50 110 KZEIT = 0 IF (KSAT(4).GT.KSAT(39)) KZEIT = 8640000 KZEIT = KZEIT + (KSAT(39) - KSAT(4)) IF((KSAT(32) +KSAT(34)) - KZEIT) 120,120,130 120 KSUM(MTAG,1) =KSUM(MTAG,1) + KZEIT KSUM(MTAG,2) = KSUM(MTAG,2) + KSAT(32) + KSAT(34) GO TO 50 130 KSUM(MTAG,3) = KSUM(MTAG,3) + KZEIT GO TO 50 500 DO 510 I= 1,31 KSEULE = KSUM(I,1) / 120000 IF(KSEULE) 501,505,501 501 DO 502 IL = 1,KSEULE KPLOT(I,IL) = KUND + KPLOT(I,IL) 502 CONTINUE 505 IF (KSUM(I,3)) 509,508,509 509 KMILLE = KSEULE+ (KSUM(I,3) / 120000) KSEULE = KSEULE + 1 DO 5091 IL = KSEULE,KMILLE KPLOT(I,IL) = KPLOT(I,IL) + KSTRI 5091 CONTINUE 508 KSEULE = KSUM(I,2) / 120000 IF (KSEULE) 506,510,506 506 DO 507 IL = 1,KSEULE KPLOT(I,IL) = KPLOT(I,IL) + KSTRI 507 CONTINUE 510 CONTINUE I= 72 WRITE(3,520) MON,JA 520 FORMAT ('1STD.',10X,'PLOTTERBELEGUNG FUER MONAT',I3,'.',I2,': &=VW 1-ZEIT,%=ANTEILIGE CPU/CAN-ZEIT,*=VW-ZEIT OHNE ANTLG. CPU/CAN-ZEIT. 2'/) 524 CALL COMLOG (124,KPLOT(1,I),KLEER,IER) 525 IF (IER-2) 530,550,530 530 WRITE (3,535) ZEIL(I),(KPLOT(K,I),K=1,31) 535 FORMAT (' ',F4.1,' ',31A4) 550 I = I - 1 IF (I) 560,560,524 560 WRITE (3,565) 565 FORMAT (' ',5('-'),15('++++----'),'++++') WRITE (3,570) 570 FORMAT (' ',6X,' 1 2 3 4 5 6 7 8 9 10 11 12 13 1 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 230 31 TAG') DO 580 I = 2,31 KSUM(1,1) = KSUM(1,1) + KSUM(I,1) KSUM(1,2) = KSUM(1,2) + KSUM(I,2) KSUM(1,3) = KSUM(1,3) + KSUM(I,3) 580 CONTINUE VWUND = KSUM(1,1) / 360000. VWPROZ= KSUM(1,2) / 360000. VWSTER= KSUM(1,3) / 360000. WRITE (3,585) VWUND,VWPROZ 585 FORMAT ('-VERWEILZEIT (&)',F10.2,' STD. CPU/CAN ANTEILE (%)',F10.2 1,' STD.') WRITE (3,590) VWSTER 590 FORMAT (' VERWEILZEIT OHNE ANTEILIGE CPU/CAN-ZEIT (*)',F10.2,' STD 1.') 600 MON = MONAT JA = JAHR KSUM(1,1) = 0 CALL MOVE (KSUM(1,1),1,KSUM(1,1),5,368) KPLOT(1,1) = KBLA CALL MOVE (KPLOT(1,1),1,KPLOT(1,1),5,8924) IF (KEND) 990,100,100 900 KEND = -94 GO TO 500 990 CALL EXIT STOP END SUBROUTINE TAG (JAHR,MDAY,MONAT) DIMENSION MO(13) INTEGER *2 JAHR,MDAY DATA MO/0,31,59,90,120,151,181,212,243,273,304,334,365/ K=0 IF (JAHR -(JAHR/4)*4) 30,10,30 10 DO 15 I = 3,13 MO(I) = MO(I) + 1 15 CONTINUE K=1 30 DO 35 I = 2,13 MONAT = I - 1 IF (MDAY - MO(I)) 40,40,35 35 CONTINUE 40 MDAY = MDAY - MO(MONAT) IF (K) 50,90,50 50 DO 55 I = 3,13 MO(I) = MO(I) - 1 55 CONTINUE 90 RETURN END