C REMPL3 SOURCE JC220346 12/05/15 21:15:04 7370 * ************************************************************************ * * R E M P L 3 * ----------- * * FONCTION: * --------- * * REMPLACER LE I-EME ELEMENT D'UN OBJET DE TYPE 'LISTMOTS'. * * MODE D'APPEL: * ------------- * * CALL REMPL3 (IPOINT,IEME,LEMOT) * * PARAMETRES: (E)=ENTREE (S)=SORTIE * ----------- * * IPOINT ENTIER (E) POINTEUR DE L'OBJET DE TYPE "LISTMOTS". * IEME ENTIER (E) NUMERO D'ORDRE DE L'ELEMENT A REMPLACER * DANS L'OBJET DE TYPE "LISTMOTS". * LEMOT ENTIER (E) ELEMENT REMPLACANT (CONTIENT UNE CHAINE DE * CARACTERES). * IPLISM ENTIER (E) POINTEUR VERS UN "LISTMOTS" DE REMPLACANTS * IPOS ENTIER (E) SI NEGATIF, IEME EST UN POINTEUR "LISTENTI" * * SOUS-PROGRAMMES APPELES: * ------------------------ * * ERREUR * * AUTEUR, DATE DE CREATION: * ------------------------- * * PASCAL MANIGOT 5 DECEMBRE 1984 * * LANGAGE: * -------- * * ESOPE + FORTRAN77 + EXTENSION: CARACTERES MIS DANS DES ENTIERS * ************************************************************************ * IMPLICIT INTEGER(I-N) * -INC PPARAM -INC CCOPTIO -INC SMLENTI -INC SMLMOTS * CHARACTER*(*) LEMOT * MLMOTS=IPOINT SEGACT,MLMOTS*MOD * * Y a-t-il plusieurs remplacements a faire ? NBRMPL=1 IF (IPOS.LT.0) THEN MLENT1=IEME SEGACT,MLENT1 NBRMPL=MLENT1.LECT(/1) * * Y a-t-il des valeurs de remplacement distinctes ? IF (IPLISM.NE.0) THEN MLMOT1=IPLISM SEGACT,MLMOT1 MOTERR(1:8)='LISTxxxx' RETURN ENDIF ENDIF ENDIF * * Mise a jour du LISTMOTS DO II=1,NBRMPL IF (IPOS.LT.0) IEME=MLENT1.LECT(II) ELSE INTERR(1)=IEME ENDIF ENDDO * SEGDES,MLMOTS IF (IPOS.LT.0) SEGDES,MLENT1 IF (IPLISM.NE.0) SEGDES,MLMOT1 * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales