C********************************************************************** C C C BIBAJOUTE.FTN EST LA SOUSROUTINE QUI PERMET C D'AJOUTER UN OU DES MOTS CLES SUR LES FICHES C BIBLIOGRAPHIQUES. C C*********************************************************************** SUBROUTINE AJOUT(MCF,NF) DIMENSION MOT(512),CLE(1000,12),MOC(12,10),MCLE(10),RPL(12) BYTE CLE,MOC,CR,RPL COMMON /ASVAR/L,J COMMON /CHANG/NMC,CLE,MCLE,MOC,MOT MCF=MCF+1 NCL=MCF 1210 TYPE 110,MCF 110 FORMAT(/,'$MOT CLE #',I3,' a rajouter :') ACCEPT 106,(MOC(K,MCF),K=1,12) 106 FORMAT(12A1) IF (MOC(1,MCF).EQ.' ') GO TO 130 MCF=MCF+1 IF (MCF.LE.10) GO TO 1210 130 MCF=MCF-1 IF (MCF)214,214,131 131 DO 200 I=NCL,MCF 205 IF (MOC(1,I).GE.'A') GO TO 207 KIZ=0 DO 208 KI=1,12 IF (MOC(KI,I).EQ.' ') GO TO 209 KIZ=KIZ+1 RPL(KI)=MOC(KI,I) 208 CONTINUE 209 DECODE(KIZ,206,RPL) K 206 FORMAT(I12) TYPE 217,(CLE(K,KI),KI=1,12) ACCEPT 507,CR 507 FORMAT(A1) IF (CR.NE.'N') GO TO 210 TYPE 110,I ACCEPT 106,(MOC(KI,I),KI=1,12) GO TO 205 207 CONTINUE IF (NMC) 202,202,204 204 K=0 201 K=K+1 NON=0 DO 211 KI=1,12 IF(MOC(KI,I).NE.CLE(K,KI)) NON=NON+1 211 CONTINUE IF (NON.GT.2) GO TO 213 IF (NON.EQ.0) GO TO 210 TYPE 217,(CLE(K,KI),KI=1,12) 217 FORMAT(//'$Vous voulez dire ',12A1,' ? <[O] ou N>:') ACCEPT 507,CR IF (CR.EQ.'N') GO TO 201 DO 218 KI=1,12 218 MOC(KI,I)=CLE(K,KI) GO TO 210 213 IF (K-NMC) 201,202,202 202 TYPE 203,(MOC(KI,I),KI=1,12) 203 FORMAT(//,1H$,12A1,' est un nouveau mot cle !',// 2'$le garde-t-on? <[O] ou N>:') ACCEPT 507,CR IF (CR.EQ.'N') GO TO 220 NMC=NMC+1 DO 65 KI=1,12 65 CLE(NMC,KI)=MOC(KI,I) MOT(1)=1 MOT(2)=NF WRITE(7'NMC)MOT MCLE(I)=NMC GO TO 230 220 TYPE 110,I ACCEPT 106,(MOC(KI,I),KI=1,12) GO TO 204 210 READ(7'K)MOT MOT(1)=MOT(1)+1 IN=MOT(1)+1 MOT(IN)=NF WRITE(7'K) MOT MCLE(I)=K 230 CONTINUE 200 CONTINUE 214 RETURN END