C LIRMO3 SOURCE CHAT 06/06/01 21:17:53 5450 SUBROUTINE LIRMO3(MOTCLE,MOTDIM,IVAL,ICOND,ICOHCO) C MOTCLE TABLEAU DES MOTS CLES POSSIBLES C MOTDIM DIMENSION DE MOTCLE C IVAL POSITION DU MOT TROUVE DANS MOTCLE (0) SI ECHEC C ICOND LECTURE IMPERATIVE OU NON IMPLICIT INTEGER(I-N) DIMENSION ICOHCO(*) CHARACTER*(*) MOTCLE(*) CHARACTER*72 MOT CHARACTER*8 ITOMO -INC CCOPTIO -INC CCNOYAU -INC CCASSIS L=LEN(MOTCLE(1)) * WRITE(6,FMT='('' lirmo3 ico(1) '',i5)') icohco(1) IF(ICOHCO(1).EQ.-1) THEN DO 5198 I=1,MOTDIM IA=0 DO 5199 J=1,L IA = IA + ICHAR(MOTCLE(I)(J:J)) 5199 CONTINUE ICOHCO(I) = IA 5198 CONTINUE ENDIF IVAL=0 * ICONDO=ICOND * DO 36 K=1,100000 ITOMO ='MOT ' CALL LIRABJ(ITOMO,IRAT,ICONDO,IRETOU) if(nbesc.ne.0) segact ipiloc IF (IERR.NE.0) RETURN * IF (IRETOU.EQ.0) GO TO 35 JF=IPCHAR(IRAT+1)-1 ID=IPCHAR(IRAT) MOT= ICHARA(ID:JF) * IA=0 DO 65 I=1,L IA=IA + ICHAR(MOT(I:I)) 65 CONTINUE * DO 1 I=1,MOTDIM IF(IA.NE.ICOHCO(I)) GO TO 1 IF (MOT(1:L).EQ.MOTCLE(I)) GOTO 2 1 CONTINUE 35 CALL NOUTRU if(nbesc.ne.0) segdes ipiloc 36 CONTINUE 2 CONTINUE IVAL=I RETURN END