Télécharger dynamod3.procedur

Retour à la liste

Numérotation des lignes :

  1. * DYNAMOD3 PROCEDUR NOBODY 92/01/01 00:00:00 001
  2. 'DEBPROC' DYNAMOD3 BASMOD*'BASEMODA' SOLUDY*'SOLUTION'
  3. TABL_MAX*'TABLE ' ;
  4. ************************************************************************
  5. *
  6. * D Y N A M O D 3
  7. * ---------------
  8. *
  9. * FONCTION:
  10. * ---------
  11. *
  12. * RECHERCHE D'UN MAXIMUM D'UNE COMPOSANTE EN VALEUR ABSOLUE AU
  13. * COURS DU TEMPS APRES RECOMBINAISON DES MODES.
  14. *
  15. * PHRASE D'APPEL (EN GIBIANE):
  16. * ----------------------------
  17. *
  18. * RESUTAB = DYNAMOD3 BASMOD SOLUDY TABLMAX ;
  19. *
  20. * OPERANDES:
  21. * ----------
  22. *
  23. * BASMOD : OBJET BASEMODA.
  24. *
  25. * SOLUDY : OBJET SOLUTION.
  26. *
  27. * TABLMAXI : TABLE CONTENANT AUTANT DE TABLES (N) QUE DE MAXIMUM
  28. * DEMANDE.
  29. * I VARIANT DE 1 A N
  30. * TABLMAXI I 'TYPE' : UN MOT, TYPE DU MAXIMUM
  31. * (DEPL,ACCE,VITE,LIAI,CONT).
  32. * TABLMAXI I 'STRUCTURE' : OBJET BASEMODA, (FACULTATIF)
  33. * SOUS-STRUCTURE OU DOIT S'EFFECTUER LA
  34. * RECOMBINAISON.
  35. * TABLMAXI I 'NUMERO' : OBJET ENTIER, (FACULTATIF)
  36. * NUMERO DE LA SOUS-STRUCTURE OU DOIT
  37. * S'EFFECTUER LA RECOMBINAISON.
  38. * PUIS,
  39. * TABLMAXI I 'POINT' : OBJET CHPOINT,MAILLAGE,ATTACHE.
  40. * POINT OU DOIT S'EFFECTUER LA DEMANDE DE
  41. * MAXIMUM.
  42. * TABLMAXI I 'COMPOSANTE' : UN MOT, NOM DE LA COMPOSANTE
  43. * DU POINT.
  44. * OU,
  45. * TABLMAXI I 'CHPOINT' : OBJET CHPOINT, CHAMP CONTENANT
  46. * LES POINTS ET LES COMPOSANTES OU DOIT
  47. * S'EFFECTUER LA DEMANDE DU MAXIMUM.
  48. *
  49. *
  50. * RESULTATS:
  51. * ----------
  52. *
  53. * RESUTAB : OBJET TABLE, INDICEE DE 1 A N
  54. * I VARIANT DE 1 A N
  55. * RESUTAB I : UN FLOTTANT, RESULTAT DE LA RECHERCHE
  56. * DEMANDEE.
  57. *
  58. * VARIABLES:
  59. * ----------
  60. *
  61. * NBTABLE : NOMBRE DE TABLES CONTENANT LE MAXIMUM A RECHERCHER.
  62. * NBINDICE : NOMBRE D'INDICES DANS UNE TABLE.
  63. *
  64. *
  65. *
  66. * AUTEUR, DATE DE CREATION:
  67. * -------------------------
  68. *
  69. * P.M. L.V. 30 MARS 1988
  70. *
  71. ************************************************************************
  72. *
  73. SI = 'MOT' 'SI' ;SINON = 'MOT' 'SINON' ;FINSI = 'MOT' 'FINSI' ;
  74. *
  75. RESUMAXI = 'TABLE' ;
  76. NBTABLE = 'DIMENSION' TABL_MAX ;
  77. INDICE1 = 0 ;
  78. *
  79. 'REPETER' BOUCLE1 NBTABLE ;
  80. INDICE1 = INDICE1 '+' 1 ;
  81. TAB_MAXI = TABL_MAX.INDICE1 ;
  82. *
  83. * ------ LECTURE DE LA TABLE ------
  84. *
  85. TYP_MAX = 'MOT' TAB_MAXI.'TYPE' ;
  86. SI ('EXISTE' TAB_MAXI 'POINT') ;
  87. PTS_MAX = TAB_MAXI.'POINT' ;
  88. COMP_MAX = 'MOT' TAB_MAXI.'COMPOSANTE' ;
  89. SINON ;
  90. 'ERREUR' 'OPTION MAXI INDISPONIBLE POUR UN CHPOINT' ;
  91. CHP_MAX = TAB_MAXI.'CHPOINT' ;
  92. FINSI ;
  93. TXT_MAXI = 'TEXTE' ' ' ;
  94. SI ('EXISTE' TAB_MAXI 'STRUCTURE') ;
  95. _MSTRUC_ = TAB_MAXI.'STRUCTURE' ;
  96. TXT_MAXI = 'TEXTE' TXT_MAXI '_MSTRUC_' ;
  97. FINSI ;
  98. SI ('EXISTE' TAB_MAXI 'NUMERO') ;
  99. _MNUME_ = TAB_MAXI.'NUMERO' ;
  100. TXT_MAXI = 'TEXTE' TXT_MAXI '_MNUME_' ;
  101. FINSI ;
  102. *
  103. * ------- OPERATEUR MAXI -------
  104. *
  105. SI ('EXISTE' PTS_MAX) ;
  106. MONTYPE = 'TYPE' PTS_MAX ;
  107. SI ('EGA' MONTYPE 'ATTACHE ') ;
  108. 'ERREUR' 'OPTION MAXI INDISPONIBLE POUR UN OBJET ATTACHE';
  109. MAXI1 = 'EVOL' 'SOLU' SOLUDY TYP_MAX PTS_MAX COMP_MAX ;
  110. SINON ;
  111. MAXI1 = 'EVOL' 'RECO' BASMOD TXT_MAXI SOLUDY TYP_MAX
  112. PTS_MAX COMP_MAX ;
  113. LISTORD = 'EXTR' MAXI1 'ORDO' ;
  114. LISTORD2 = 'ABS' LISTORD ;
  115. XMAXI = 'MAXI' LISTORD2 ;
  116. 'DETR' LISTORD2 ;
  117. FINSI ;
  118. *+* A DEVELOPPER ULTERIEUREMENT.
  119. * SINON ;
  120. * MAXI1 = 'EVOL' 'RECO' BASMOD TXT_MAXI SOLUDY TYP_MAX CHP_MAX ;
  121. FINSI ;
  122. *
  123. * ---------- RESULTAT -----------
  124. *
  125. RESUMAXI.INDICE1 = XMAXI ;
  126. 'DETR' MAXI1 ;
  127. *
  128. 'FIN' BOUCLE1 ;
  129. *
  130. 'FINPROC' RESUMAXI ;
  131.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales