Télécharger fienti.eso

Retour à la liste

Numérotation des lignes :

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

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