Download lirmo2.eso

Back to the list

   1 : C LIRMO2    SOURCE    CHAT      06/03/30    21:15:15     5364           
   2 :       SUBROUTINE LIRMO2(MOTCLE,MOTDIM,IVAL,ICOND,ICOHCO)                 
   3 : C     MOTCLE TABLEAU DES MOTS CLES POSSIBLES                             
   4 : C     MOTDIM DIMENSION DE MOTCLE                                         
   5 : C     IVAL   POSITION DU MOT TROUVE DANS MOTCLE (0) SI ECHEC             
   6 : C     ICOND  LECTURE IMPERATIVE OU NON
   7 :       IMPLICIT INTEGER(I-N)
   8 :       DIMENSION ICOHCO(*)                                          
   9 :       CHARACTER*(*) MOTCLE(*)                                            
  10 :       CHARACTER*72 MOT                                                   
  11 : -INC CCOPTIO 
  12 :         L=LEN(MOTCLE(1))
  13 :        IF(ICOHCO(1).EQ.-1) THEN
  14 :          DO 5198 I=1,MOTDIM
  15 :          IA=0
  16 :          DO 5199 J=1,L
  17 :          IA = IA + ICHAR(MOTCLE(I)(J:J))
  18 :  5199    CONTINUE
  19 :          ICOHCO(I) = IA
  20 :  5198    CONTINUE   
  21 :       ENDIF
  22 :       ICONDO=ICOND                                                        
  23 :       IVAL=0
  24 :       MOT=' '                                                            
  24 :       CALL LIRCHA(MOT(1:L),ICONDO,IRETOU)                                
  25 :       IF (IERR.NE.0) RETURN                                                                                                                      
  26 :       IF (IRETOU.EQ.0) RETURN                                                                                                          
  27 :       IA=0
  28 :       DO 65 I=1,L
  29 :       IA=IA + ICHAR(MOT(I:I))
  30 :   65  CONTINUE                                                                                                          
  31 :       DO 1 I=1,MOTDIM 
  32 :       IF(IA.NE.ICOHCO(I)) GO TO 1                                        
  33 :       IF (MOT(1:L).EQ.MOTCLE(I)) GOTO 2                                  
  34 :    1  CONTINUE                                                                                                                                   
  35 :       IF (MOT(1:2).NE.'? ') GOTO 3                                                                                                               
  36 :       WRITE (IOIMP,100) (MOTCLE(I),I=1,MOTDIM)                           
  37 :  100  FORMAT(/,' LISTE DES MOTS RECONNUS',/,(1H ,10A8))                                                                                          
  37 :    3  CALL REFUS                                                         
  38 :       I=0                                                                                                                                        
  39 :       MOTERR(1:8)=MOT(1:L)                                               
  39 :       IF (ICOND.EQ.1) CALL ERREUR(7)                                                                                                             
  40 :    2  CONTINUE                                                           
  41 :       IVAL=I                                                             
  42 :       RETURN                                                                                 
  43 :       END                                                                
  44 :  
  45 :  

© Cast3M 2003 - All rights reserved.
Disclaimer