COMMON IFORM,IHALB,ISTA,ISTB,ISTD,ISTE,ISTF,ISTG,ISTL,ISTM COMMON LANF,IANF,IZFE,IZFA,N,I,I2 DIMENSION NOTE(25,50),L(149),KARTE(16),IFACH(13),DATEI(3) DIMENSION N(67) ISPA=7+2*(IFORM+911) ISPB=(IHALB+928)/64 ISPAL=ISPA+ISPB CALL RTAPE(1,ISTL,149,L) LANF=L(149) DATEI(1)='HILFE1' DATEI(2)='HILFE2' DATEI(3)='HILFE3' IZAEHL=1 280 IF(L(149)-99) 10,10,20 10 IEND=50 GOTO 30 20 IEND=149-L(149) IF(IEND) 150,150,30 30 DO 40 K=1,IEND 40 NOTE(1,K)=L(L(149)+K-1) IEND1=IEND +1 DO 50 K=IEND1,50 50 NOTE(1,K)=0 L(149)=L(149)+50 CALL IOPEN('RKA1','FACH') DO 60 K=1,IEND 70 READ(4,100)(IFACH(M),M=1,11) 100 FORMAT(I3,10I3) IF(NOTE(1,K)-IFACH(1)) 70,80,70 80 DO 900 M=2,11 IF(IFACH(M)/10-51) 90,95,90 95 IFACH(M)=IFACH(M)+20 90 NOTE(M,K)=IFACH(M) 900 CONTINUE NOTE(12,K)=100 NOTE(13,K)=100 DO 5 K0=14,25 5 NOTE(K0,K)=-1 60 CONTINUE CALL IOPEN('RKA1','NOTEN') 120 READ(4,110)(KARTE(M),M=1,16) 110 FORMAT(I3,3(I1,I2),5I2,I1,2I2,I1) IF(KARTE(1)) 130,130,140 140 DO 160 K=1,50 IF(NOTE(1,K)-KARTE(1)) 160,170,160 170 NR=K GOTO 180 160 CONTINUE GOTO 120 180 KAFANR=10*KARTE(5)+KARTE(6) DO 190 K2=2,11 IF(NOTE(K2,NR)-KAFANR) 1900,200,1900 1900 IF(NOTE(K2,NR)/10-KARTE(5)) 190,1905,190 1905 KF1=K2+1 DO 1910 K3=KF1,11 IF(NOTE(K3,NR)-KAFANR) 1930,1920,1930 1920 K0=K3 GOTO 220 1930 IF(NOTE(K3,NR)/10-KARTE(5)) 1910,1940,1910 1940 KF2=K3 KF1=KF1-1 GOTO 1950 1910 CONTINUE KUFEHL=NOTE(KF1-1,NR)-10*KARTE(5) WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL 1960 FORMAT('SCHUELER NR. ',I3,' HAT IN ',A2,' NICHT ' 1'KURS ',I1,' SONDERN ',I1,' GEWAEHLT.') K0=KF1-1 GOTO 220 1950 IF(NOTE(KF1+12,NR)) 1970,1980,1980 1970 KUFEHL=NOTE(KF1,NR)-10*KARTE(5) WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL K0=KF1 GOTO 220 1980 IF(NOTE(KF2+12,NR)) 1990,2000,2000 1990 KUFEHL=NOTE(KF2,NR)-10*KARTE(5) WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL K0=KF2 GOTO 220 2000 WRITE(1,2001)(KARTE(L0),L0=1,16) 2001 FORMAT('KEINE ZUORDNUNG MOEGLICH FUER:'/16I3) GOTO 120 200 K0=K2 GOTO 220 190 CONTINUE WRITE(1,210)KARTE(1),N(KARTE(5)) 210 FORMAT(/'SCHUELER NR. ',I3,' HAT KEIN ',A2,' GEWAEHLT.') GOTO 120 220 IF(NOTE(K0+12,NR)) 224,222,222 222 NOTHIL=NOTE(K0+12,NR) GOTO 225 224 NOTHIL=-1 225 NT=(NOTHIL+30)/15 IF(KARTE(3)/10-912-IFORM) 230,240,230 230 NOTE(K0+12,NR)=KARTE(ISPAL) GOTO (120,1200,1200),NT 240 IF(KARTE(14+ISPB)) 250,230,250 250 NOTE(K0+12,NR)=KARTE(14+ISPB) GOTO (120,1200,1200),NT 1200 WRITE(1,1201)KARTE(1),N(KARTE(5)) 1201 FORMAT('DOPPELTE KARTE; BESSERE NOTE EINGETRAGEN BEI ',I3, 12X,A2) IF(NOTHIL-NOTE(K0+12,NR)) 1210,120,120 1210 NOTE(K0+12,NR)=NOTHIL GOTO 120 130 CALL OOPEN('RKA1',DATEI(IZAEHL)) DO 260 K=1,50 260 WRITE(4,270)(NOTE(K2,K),K2=1,25) 270 FORMAT(13I3,12I2) CALL OCLOSE IZAEHL=IZAEHL+1 GOTO 280 150 IZAEHL=IZAEHL-1 READ(1,300)FNAME 300 FORMAT('NAME FUER GESAMTDATEI:'A6) CALL OOPEN('RKB1',FNAME) DO 290 ID=1,IZAEHL CALL IOPEN('RKA1',DATEI(ID)) DO 310 K=1,50 READ(4,270)(NOTE(K2,K),K2=1,25) 310 WRITE(4,270)(NOTE(K2,K),K2=1,25) 290 CONTINUE CALL OCLOSE END