Télécharger fimot2.eso

Retour à la liste

Numérotation des lignes :

fimot2
  1. C FIMOT2 SOURCE CB215821 20/11/04 21:17:25 10766
  2. SUBROUTINE FIMOT2(MYMOT,MYLMOT,NBMOTS,
  3. $ INDMOT,
  4. $ IMPR,IRET)
  5. IMPLICIT INTEGER(I-N)
  6. IMPLICIT REAL*8 (A-H,O-Z)
  7. C***********************************************************************
  8. C NOM : FIMOT2
  9. C DESCRIPTION : Cherche le mot MYMOT dans la liste de mots MYLMOT.
  10. C Si on le trouve, on renvoie son indice dans la liste
  11. C sinon on renvoie 0
  12. C LANGAGE : ESOPE
  13. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  14. C mél : gounand@semt2.smts.cea.fr
  15. C***********************************************************************
  16. C APPELE PAR : PRASEM
  17. C***********************************************************************
  18. C ENTREES : MYMOT(CH*), MYLMOT(seg. MLMOTS)
  19. C SORTIES : INDMOT
  20. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  21. C***********************************************************************
  22. C VERSION : v1, 07/03/06, version initiale
  23. C HISTORIQUE : v1, 07/03/06, création
  24. C HISTORIQUE :
  25. C HISTORIQUE :
  26. C***********************************************************************
  27. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  28. C en cas de modification de ce sous-programme afin de faciliter
  29. C la maintenance !
  30. C***********************************************************************
  31.  
  32. -INC PPARAM
  33. -INC CCOPTIO
  34. CHARACTER*(*) MYLMOT(*),MYMOT
  35. INTEGER INDMOT
  36. *
  37. INTEGER IMPR,IRET
  38. *
  39. INTEGER MLMETA
  40. INTEGER INBM
  41. INTEGER NBMOTS
  42. LOGICAL LFOUND
  43. *
  44. * Executable statements
  45. *
  46. IF (IMPR.GT.5) WRITE(IOIMP,*) 'Entrée dans fimot2'
  47.  
  48. INBM=0
  49. LFOUND=.FALSE.
  50. 1 CONTINUE
  51. IF (.NOT.LFOUND.AND.INBM.LT.NBMOTS) THEN
  52. INBM=INBM+1
  53. LFOUND=MYMOT.EQ.MYLMOT(INBM)
  54. GOTO 1
  55. ENDIF
  56. IF (.NOT.LFOUND) THEN
  57. INDMOT=0
  58. ELSE
  59. INDMOT=INBM
  60. ENDIF
  61. *
  62. * Normal termination
  63. *
  64. IRET=0
  65. RETURN
  66. *
  67. * Format handling
  68. *
  69. *
  70. * Error handling
  71. *
  72. 9999 CONTINUE
  73. IRET=1
  74. WRITE(IOIMP,*) 'An error was detected in subroutine fimot2'
  75. RETURN
  76. *
  77. * End of subroutine FIMOT2
  78. *
  79. END
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  

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