chcass
C CHCASS SOURCE GOUNAND 14/05/28 21:15:04 8056 IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : CHCASS C DESCRIPTION : Change la casse d'un mot C icass = 0 passage en minuscule C icass = 1 passage en majuscule C MENT et MSOR peuvent être identiques. C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C*********************************************************************** C HISTORIQUE : 24/01/2014 : création C HISTORIQUE : C HISTORIQUE : C*********************************************************************** CHARACTER*(*) MENT,MSOR CHARACTER*26 MINUSC,MAJUSC DATA MINUSC/'abcdefghijklmnopqrstuvwxyz'/ DATA MAJUSC/'ABCDEFGHIJKLMNOPQRSTUVWXYZ'/ * * Executable statements * LENT=LEN(MENT) LSOR=LEN(MSOR) LN=MIN(LENT,LSOR) IF(ICASS.EQ.1) THEN DO IN=1,LN ICAR=INDEX(MINUSC,MENT(IN:IN)) IF (ICAR.NE.0) THEN MSOR(IN:IN)=MAJUSC(ICAR:ICAR) ELSE MSOR(IN:IN)=MENT(IN:IN) ENDIF ENDDO ELSE DO IN=1,LN ICAR=INDEX(MAJUSC,MENT(IN:IN)) IF (ICAR.NE.0) THEN MSOR(IN:IN)=MINUSC(ICAR:ICAR) ELSE MSOR(IN:IN)=MENT(IN:IN) ENDIF ENDDO ENDIF RETURN * * End of subroutine CHCASS * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales