C TABVEC SOURCE CHAT 05/01/13 03:30:51 5004 SUBROUTINE TABVEC (MTABLE,MLREEL,N) IMPLICIT INTEGER(I-N) -INC SMTABLE -INC SMLREEL -INC PPARAM -INC CCOPTIO * * transformation d'une table vecteur en listreel * * on teste d'abord le sous-type de la table puis si N n'est pas * zero on teste que le nombre d'indice trouve est bien N * LOGICAL LOGIN,LOGRE CHARACTER*8 TYPOBJ,CHARRE REAL*8 XVALIN,XVALRE CHARACTER*1 CHARIN SEGACT MTABLE TYPOBJ= 'MOT ' CALL ACCTAB(MTABLE,'MOT ',I,XVALIN,'SOUSTYPE',LOGIN,IOBIN, $ TYPOBJ,IVALRE,XVALRE,CHARRE,LOGRE,IOBRE) IF(IERR.NE.0) RETURN IF(CHARRE(1:7).NE.'VECTEUR') THEN MOTERR(1:8)='VECTEUR ' CALL ERREUR(602) RETURN ENDIF NENTRE=N SEGACT MTABLE JG=MLOTAB-1 JD=0 SEGINI MLREEL DO 10 I=1,MLOTAB TYPOBJ=' ' CALL ACCTAB(MTABLE,'ENTIER ',I,XVALIN,CHARIN,LOGIN,IOBIN, $ TYPOBJ,IVALRE,XVALRE,CHARRE,LOGRE,IOBRE) IF(TYPOBJ.NE.'ENTIER '.AND.TYPOBJ.NE.'FLOTTANT') GO TO 11 JD=JD+1 PROG(JD)=XVALRE IF(TYPOBJ.EQ.'ENTIER ') PROG(JD)=IVALRE 10 CONTINUE 11 CONTINUE IF(NENTRE.NE.0.AND.JD.NE.NENTRE) THEN CALL ERREUR(601) ENDIF IF(JD.NE.JG) THEN JG=JD SEGADJ MLREEL ENDIF N=JG SEGDES MTABLE RETURN END