Télécharger fienti.eso

Retour à la liste

Numérotation des lignes :

fienti
  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.  
  34. -INC PPARAM
  35. -INC CCOPTIO
  36. INTEGER NBENTS
  37. INTEGER MYLENT(NBENTS)
  38. INTEGER MYENT
  39. INTEGER INDENT
  40. *
  41. INTEGER IMPR,IRET
  42. *
  43. INTEGER INBM,IENTS
  44. LOGICAL LFOUND
  45. *
  46. * Executable statements
  47. *
  48. IF (IMPR.GT.5) WRITE(IOIMP,*) 'Entrée dans fienti'
  49. INBM=0
  50. LFOUND=.FALSE.
  51. 1 CONTINUE
  52. IF (.NOT.LFOUND.AND.INBM.LT.NBENTS) THEN
  53. INBM=INBM+1
  54. LFOUND=MYENT.EQ.MYLENT(INBM)
  55. GOTO 1
  56. ENDIF
  57. IF (.NOT.LFOUND) THEN
  58. WRITE(IOIMP,*) 'On n''a pas trouvé l''entier ',MYENT
  59. WRITE(IOIMP,*) 'dans la liste d''entiers.'
  60. WRITE(IOIMP,*) (MYLENT(IENTS),IENTS=1,NBENTS)
  61. GOTO 9999
  62. ENDIF
  63. INDENT=INBM
  64. *
  65. * Normal termination
  66. *
  67. IRET=0
  68. RETURN
  69. *
  70. * Format handling
  71. *
  72. *
  73. * Error handling
  74. *
  75. 9999 CONTINUE
  76. IRET=1
  77. WRITE(IOIMP,*) 'An error was detected in subroutine fienti'
  78. RETURN
  79. *
  80. * End of subroutine FIENTI
  81. *
  82. END
  83.  
  84.  
  85.  
  86.  

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