Télécharger lirmo2.eso

Retour à la liste

Numérotation des lignes :

  1. C LIRMO2 SOURCE CHAT 06/03/30 21:15:15 5364
  2. SUBROUTINE LIRMO2(MOTCLE,MOTDIM,IVAL,ICOND,ICOHCO)
  3. C MOTCLE TABLEAU DES MOTS CLES POSSIBLES
  4. C MOTDIM DIMENSION DE MOTCLE
  5. C IVAL POSITION DU MOT TROUVE DANS MOTCLE (0) SI ECHEC
  6. C ICOND LECTURE IMPERATIVE OU NON
  7. IMPLICIT INTEGER(I-N)
  8. DIMENSION ICOHCO(*)
  9. CHARACTER*(*) MOTCLE(*)
  10. CHARACTER*72 MOT
  11. -INC CCOPTIO
  12. L=LEN(MOTCLE(1))
  13. IF(ICOHCO(1).EQ.-1) THEN
  14. DO 5198 I=1,MOTDIM
  15. IA=0
  16. DO 5199 J=1,L
  17. IA = IA + ICHAR(MOTCLE(I)(J:J))
  18. 5199 CONTINUE
  19. ICOHCO(I) = IA
  20. 5198 CONTINUE
  21. ENDIF
  22. ICONDO=ICOND
  23. IVAL=0
  24. MOT=' '
  25. CALL LIRCHA(MOT(1:L),ICONDO,IRETOU)
  26. IF (IERR.NE.0) RETURN
  27. IF (IRETOU.EQ.0) RETURN
  28. IA=0
  29. DO 65 I=1,L
  30. IA=IA + ICHAR(MOT(I:I))
  31. 65 CONTINUE
  32. DO 1 I=1,MOTDIM
  33. IF(IA.NE.ICOHCO(I)) GO TO 1
  34. IF (MOT(1:L).EQ.MOTCLE(I)) GOTO 2
  35. 1 CONTINUE
  36. IF (MOT(1:2).NE.'? ') GOTO 3
  37. WRITE (IOIMP,100) (MOTCLE(I),I=1,MOTDIM)
  38. 100 FORMAT(/,' LISTE DES MOTS RECONNUS',/,(1H ,10A8))
  39. 3 CALL REFUS
  40. I=0
  41. MOTERR(1:8)=MOT(1:L)
  42. IF (ICOND.EQ.1) CALL ERREUR(7)
  43. 2 CONTINUE
  44. IVAL=I
  45. RETURN
  46. END
  47.  
  48.  
  49.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales