[updated 27.Jan.2006]

Librairie utiliter > Fichier inttyp.f

Qui appelle inttyp ?

line
      FUNCTION INTTYP (CHAINE)
line
  Auteur : D.Martin (Octobre 1989)  
  Derniere modification : D.Martin (27 janvier 2006)
  Version 2
   
  Codage du type de donnee (ENTIER/INTEGER,REEL/REAL,COMPLEXE/COMPLEX
                           ,CARACTERE/CHARACTER) par un entier
  Function reciproque TypInt
   
 -- Argument d'entree --  
  CHAINE : Chaine de caractere representant le type de donnee  
line
      CHARACTER*(*) CHAINE
      INTEGER       INTTYP
 
      CHARACTER     UPPERC*9
      INTEGER       CHIFFR,KELCHN
      INTEGER       NBCHEN,NBCCHN,LENTYP,LENMAX,I,J
      PARAMETER    (NBCHEN=5,NBCCHN=9) 
      CHARACTER     CCCHEN*120,TBCHEN(NBCHEN*NBCCHN),CHAINW*9
      COMMON/ONSEPA/CCCHEN 
      EQUIVALENCE  (TBCHEN,CCCHEN) 
line
      LENTYP=LEN (CHAINE)
      LENMAX=MIN (NBCCHN,LENTYP)
      CHAINW=UPPERC (CHAINE)
      CCCHEN(1:NBCHEN*NBCCHN)=
     &'ENTIER   REEL     DOUBLE   COMPLEXE CARACTERE'
 
      INTTYP=KELCHN (CHAINE(:LENMAX),TBCHEN,NBCHEN,NBCCHN)              !utilite
      IF (INTTYP.LE.0) THEN
         CCCHEN(1:NBCHEN*NBCCHN)=
     &'INTEGER  REAL     DOUBLE   COMPLEX  CHARACTER'
         INTTYP=KELCHN (CHAINE(:LENMAX),TBCHEN,NBCHEN,NBCCHN)           !utilite
      ENDIF
      IF (INTTYP.LE.0) GOTO 99991
      IF (INTTYP.LT.5) RETURN
   
      Cas des chaines de caracteres
 
      J=0
      INTTYP=11
      IF (LENTYP.GT.NBCCHN+1.AND.CHAINE(NBCCHN+1:NBCCHN+1).EQ.'*') THEN
         DO 1 I=LENTYP,NBCCHN+2,-1
            IF (CHAINE(I:I).NE.' ') GOTO 2
 1       CONTINUE
         I=LENTYP
 2       LENTYP=I
         DO 3 I=NBCCHN+2,LENTYP
            IF (CHIFFR (CHAINE(I:I),J).NE.1) GOTO 99991
 3       CONTINUE
         CALL RELCNE (CHAINE(NBCCHN+2:LENTYP),J)                        !utilite
         INTTYP=NBCCHN+1+J
      ENDIF
      RETURN
line
99991 CCCHEN=CHAINE
      CALL BAISE  ('*IntTyp* '//CCCHEN(1:LENTYP)
     &//' est un drole de type!')
                                                                    END !Inttyp
line
top

inttyp est appelé dans (83 procédures)

adim.f (cordom) asmake.f (sdexplo) asmatr.f (assembl)
asmniv.f (assembl) asploc.f (efloca) assefl.f (efloca)
asvect.f (assembl) asvniv.f (assembl) axterm.f (assembl)
calksp.f (efloca) calnoy.f (ccalgre) calri1.f (couplag)
calri2.f (couplag) calrid.f (couplag) cdtran.f (cesse)
cecado.f (cesse) clterm.f (assembl) cogdno.f (couplag)
cognop.f (couplag) coslgn.f (couplag) coumat.f (couplag)
diamat.f (assembl) doasfc.f (sdexplo) doastr.f (sdexplo)
dsmadi.f (assembl) dsmake.f (sdexplo) dsmamo.f (assembl)
dsmruc.f (assembl) dsvect.f (assembl) dsvruc.f (assembl)
ecctrm.f (sdexplo) ecmatr.f (sdexplo) ecterm.f (sdexplo)
efatri.f (caltrm) efladc.f (efloca) eflava.f (efloca)
eflavb.f (efloca) efloco.f (efloca) eflqtr.f (efloca)
efltrd.f (efloca) efvnlo.f (caltrm) elploc.f (efloca)
gausmc.f (syslin) gbodyr.f (grafxout) gcprep.f (syslin)
gheadr.f (grafxout) lcasse.f (lecdire) lcautr.f (lecdire)
lccado.f (lecdire) lccste.f (lecdire) lcdonn.f (lecdire)
lckdom.f (lecdire) lckspe.f (lecdire) literm.f (sdexplo)
m2uenr.f (grafxout) m2ursd.f (grafxout) matdia.f (assembl)
matmat.f (assembl) mksdgn.f (sdexplo) mkterm.f (sdexplo)
mm2moc.f (morse) mo2moc.f (morse) pgauss.f (syslin)
putcst.f (sdexplo) puttab.f (sdexplo) rlbmtr.f (couplag)
rldgtr.f (couplag) rldltr.f (couplag) rlfltr.f (couplag)
savtrm.f (caldom) soprep.f (syslin) syprep.f (syslin)
t1term.f (assembl) t2term.f (assembl) trmdom.f (caltrm)
typint.f (utiliter) vcprep.f (sdexplo) vnatri.f (caltrm)
vpinit.f (valpro) vpmise.f (valpro) vpopti.f (valpro)
vpprep.f (valpro) xsterm.f (assembl)  

top