1 : C MAXIM3 SOURCE CHAT 05/01/13 01:36:20 5004 2 : SUBROUTINE MAXIM3 (IPLREE,IPLACE,PGRAND) 3 : ************************************************************************ 4 : * 5 : * M A X I M 3 6 : * ----------- 7 : * 8 : * FONCTION: 9 : * --------- 10 : * 11 : * FOURNIR LA PLUS GRANDE VALEUR D'UN 'LISTREEL' (PLUS GRANDE EN 12 : * VALEUR ABSOLUE, MAIS RETOURNEE AVEC SON SIGNE). 13 : * 14 : * MODE D'APPEL: 15 : * ------------- 16 : * 16 : * CALL MAXIM3 (IPLREE,IPLACE,PGRAND) 17 : * 18 : * PARAMETRES: (E)=ENTREE (S)=SORTIE 19 : * ----------- 20 : * 21 : * IPLREE ENTIER (E) POINTEUR SUR LE 'LISTREEL' DONT ON EXTRAIT 22 : * LA PLUS GRANDE VALEUR. 23 : * IPLACE ENTIER (S) RANG DE LA PLUS GRANDE VALEUR DANS LE 24 : * 'LISTREEL'. 25 : * PGRAND REEL DP (S) PLUS GRANDE VALEUR (EN VALEUR ABSOLUE) 26 : * EXTRAITE DU 'LISTREEL'. 27 : * CETTE VALEUR EST RETOURNEE AVEC SON SIGNE. 28 : * 29 : * AUTEUR, DATE DE CREATION: 30 : * ------------------------- 31 : * 32 : * PASCAL MANIGOT 16 AVRIL 1985 33 : * 34 : * LANGAGE: 35 : * -------- 36 : * 37 : * ESOPE + FORTRAN77 38 : * 39 : ************************************************************************ 40 : * 41 : IMPLICIT INTEGER(I-N) 42 : -INC SMLREEL 43 : * 44 : REAL*8 AGRAND,PGRAND 45 : * 46 : MLREEL = IPLREE 47 : SEGACT,MLREEL 48 : LDIM = PROG(/1) 49 : * 50 : AGRAND = -1.D0 51 : PGRAND = 0.D0 52 : IPLACE = 0 53 : DO 100 IB100=1,LDIM 54 : IF (ABS(PROG(IB100)) .GT. AGRAND) THEN 55 : PGRAND = PROG(IB100) 56 : AGRAND = ABS(PGRAND) 57 : IPLACE = IB100 58 : END IF 59 : 100 CONTINUE 60 : * END DO 61 : * 62 : * RQ: POUR L'INSTANT, ON DECIDE DE RENVOYER (PGRAND = 0.) ET 63 : * (IPLACE = 0) SI LE 'LISTREEL' EST VIDE. 64 : * ON NE FAIT PAS DE MESSAGE D'ERREUR. 65 : * 66 : SEGDES,MLREEL 67 : * 68 : END 69 :
© Cast3M 2003 - All rights reserved.
Disclaimer