elimin5
C ELIMIN5 SOURCE SP204843 26/07/30 21:15:06 12612 ************************************************************************ * NOM : ELIMIN5 * DESCRIPTION : Supprime les doublons dans un LISTOBJE ************************************************************************ * SYNTAXE (GIBIANE) : voir notice ! ************************************************************************ SUBROUTINE ELIMIN5(IPLOBJ,ICRIT,RCRIT) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC SMLOBJE -INC SMLENTI -INC SMLREEL MLOBJ1 = IPLOBJ SEGINI, MLOBJE = MLOBJ1 *---- Cas d'un LISTOBJE de flottants : IF (MLOBJ1.TYPOBJ.EQ.'FLOTTANT') THEN * Conversion en LISTREEL JG = MLOBJ1.RLIREE(/1) SEGINI, MLREEL DO 10 I=1,JG 10 CONTINUE * Appel a ELIMI3 IPLREE = MLREEL * Copie du resultat en LISTOBJE MLREEL = IPLREE SEGACT, MLREEL NOBJ = 0 IF (NREE.NE.JG) THEN SEGADJ, MLOBJE DO 11 I=1,NREE 11 CONTINUE ELSE SEGSUP, MLOBJE MLOBJE = IPLOBJ ENDIF SEGSUP, MLREEL *---- Cas general (ENTIERS ou poineturs) : ELSE * Conversion en LISTENTI JG = MLOBJ1.LISOBJ(/1) SEGINI, MLENTI DO 20 I=1,JG LECT(I) = MLOBJ1.LISOBJ(I) 20 CONTINUE * Appel a ELIMI3 IPLENT = MLENTI * Copie du resultat en LISTOBJE MLENTI = IPLENT SEGACT, MLENTI NOBJ = LECT(/1) NREE = 0 IF (NOBJ.NE.JG) THEN SEGADJ, MLOBJE DO 21 I=1,NREE LISOBJ(I) = LECT(I) 21 CONTINUE ELSE SEGSUP, MLOBJE MLOBJE = IPLOBJ ENDIF SEGSUP, MLENTI ENDIF *---- Sortie du resultat : IPLOBJ = MLOBJE RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales