C
C This file is issued from the MODULEF library, but has been 
C subsequently modified
C
      SUBROUTINE FONCMR(TITEM, LITEM, NITEM)
C ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C           S.P. FONCMR          (FONCTIONS INTERPRETEES)
C           -----------
C ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C BUT :
C     CHERCHER LE NUMERO DE CODE D'UN MOT RESERVE
C
C PARAMETRES D ENTREE :
C     TITEM   : OPERATEUR A CHERCHER
C     LITEM   : LONGUEUR DE L OPERATEUR A CHERCHER
C
C PARAMETRES DE SORTIE :
C     NITEM   : NUMERO DE CODE DE L OPERATEUR
C ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C PROGRAMMEUR : PATRICK LAUG ; INRIA (3) 954 90 20 POSTE 508
C ......................................................................
      PARAMETER (LMOCL=3,LOPE1=19,LOPE2=14)
      CHARACTER*1 TITEM(*)
      CHARACTER*5 MOPE(LOPE1+LOPE2)
      CHARACTER*7 CITEM,MMOCL(LMOCL)
      COMMON /FONOPE/ MOPE
      DATA MMOCL /'FIN    ', 'MODE   ', 'FORTRAN'/
C
C RECOPIE DE TITEM DANS CITEM
      IF (3.GT.LITEM .OR. LITEM.GT.7) GOTO 800
      CITEM = ' '
      DO 100 I = 1,LITEM
  100 CITEM(I:I) = TITEM(I)
C
C RECHERCHE DE CITEM PARMI LES MOTS-CLES
      DO 200 I = 1,LMOCL
         IF (CITEM .EQ. MMOCL(I)) THEN
            NITEM = 20 000 + I
            RETURN
         END IF
  200 CONTINUE
C
C RECHERCHE DE CITEM PARMI LES OPERATEURS
      DO 300 I = 1,LOPE1+LOPE2
         IF (CITEM .EQ. MOPE(I)) THEN
            IF (I.LE.LOPE1) THEN
               NITEM = 41 000 + I
            ELSE
               NITEM = 42 000 + I - LOPE1
            END IF
            RETURN
         END IF
  300 CONTINUE
C
C IDENTIFICATEUR
  800 NITEM = 10 000
      END
