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 :
© Cast3M 2003 - All rights reserved.
Disclaimer