Télécharger remplacer.dgibi

Retour à la liste

Numérotation des lignes :

  1. ************************************************************************
  2. * Cas test de la directive / l'opérateur REMPlacer *
  3. ************************************************************************
  4.  
  5.  
  6.  
  7. ** Petite procédure de test d'égalité de 2 listes a et b
  8. DEBP TEST a b ;
  9. REPE bou (DIME a) ;
  10. a1 = EXTR a &bou ;
  11. b1 = EXTR b &bou ;
  12. SI (NEG a1 b1) ;
  13. LIST a ;
  14. LIST b ;
  15. ERRE 5 ;
  16. FINSI ;
  17. FIN bou ;
  18. FINP ;
  19.  
  20.  
  21. ************************************************************************
  22. * D I R E C T I V E R E M P *
  23. * REMP obj1 ind1 obj2 ; *
  24. ************************************************************************
  25.  
  26. ** Cas du LISTREEL
  27. * remplacement d'un FLOTTANT dans un LISTREEL
  28. obj0 = PROG 4. 8. 15. 100. 23. 42. ;
  29. obj1 = PROG 4. 8. 15. 16. 23. 42. ;
  30. ind1 = 4 ;
  31. obj2 = 100. ;
  32. REMP obj1 ind1 obj2 ;
  33. TEST obj0 obj1 ;
  34. * remplacement de plusieurs FLOTTANTs dans un LISTREEL
  35. obj0 = PROG 4. 100. 15. 100. 23. 42. ;
  36. obj1 = PROG 4. 8. 15. 16. 23. 42. ;
  37. ind1 = LECT 2 4 ;
  38. obj2 = 100. ;
  39. REMP obj1 ind1 obj2 ;
  40. TEST obj0 obj1 ;
  41. * remplacement de plusieurs FLOTTANTs dans un LISTREEL
  42. obj0 = PROG 4. 100. 15. 200. 300. 42. ;
  43. obj1 = PROG 4. 8. 15. 16. 23. 42. ;
  44. ind1 = LECT 2 4 5 ;
  45. obj2 = PROG 100. 200. 300. ;
  46. REMP obj1 ind1 obj2 ;
  47. TEST obj0 obj1 ;
  48.  
  49. ** Cas du LISTENTI
  50. * remplacement d'un ENTIER dans un LISTENTI
  51. obj0 = LECT 4 8 15 100 23 42 ;
  52. obj1 = LECT 4 8 15 16 23 42 ;
  53. ind1 = 4 ;
  54. obj2 = 100 ;
  55. REMP obj1 ind1 obj2 ;
  56. TEST obj0 obj1 ;
  57. * remplacement de plusieurs ENTIERs dans un LISTENTI
  58. obj0 = LECT 4 100 15 100 23 42 ;
  59. obj1 = LECT 4 8 15 16 23 42 ;
  60. ind1 = LECT 2 4 ;
  61. obj2 = 100 ;
  62. REMP obj1 ind1 obj2 ;
  63. TEST obj0 obj1 ;
  64. * remplacement de plusieurs ENTIERs dans un LISTENTI
  65. obj0 = LECT 4 100 15 200 300 42 ;
  66. obj1 = LECT 4 8 15 16 23 42 ;
  67. ind1 = LECT 2 4 5 ;
  68. obj2 = LECT 100 200 300 ;
  69. REMP obj1 ind1 obj2 ;
  70. TEST obj0 obj1 ;
  71.  
  72. ** Cas du LISTMOTS
  73. * remplacement d'un MOT dans un LISTMOTS
  74. obj0 = MOTS 'TATA' 'TETE' 'TITI' 'HOHO' 'TUTU' ;
  75. obj1 = MOTS 'TATA' 'TETE' 'TITI' 'TOTO' 'TUTU' ;
  76. ind1 = 4 ;
  77. obj2 = 'HOHO' ;
  78. REMP obj1 ind1 obj2 ;
  79. TEST obj1 obj0 ;
  80. * remplacement de plusieurs MOTs dans un LISTMOTS
  81. obj0 = MOTS 'TATA' 'HOHO' 'TITI' 'HOHO' 'TUTU' ;
  82. obj1 = MOTS 'TATA' 'TETE' 'TITI' 'TOTO' 'TUTU' ;
  83. ind1 = LECT 2 4 ;
  84. obj2 = 'HOHO' ;
  85. REMP obj1 ind1 obj2 ;
  86. TEST obj0 obj1 ;
  87. * remplacement de plusieurs MOTs dans un LISTMOTS
  88. obj0 = MOTS 'TATA' 'HEHE' 'TITI' 'HOHO' 'HUHU' ;
  89. obj1 = MOTS 'TATA' 'TETE' 'TITI' 'TOTO' 'TUTU' ;
  90. ind1 = LECT 2 4 5 ;
  91. obj2 = MOTS 'HEHE' 'HOHO' 'HUHU' ;
  92. REMP obj1 ind1 obj2 ;
  93. TEST obj0 obj1 ;
  94.  
  95. ** Cas du LISTCHPO
  96. OPTI 'DIME' 1 ;
  97. mail = (POIN 0.) ET (POIN 1.) ET (POIN 2.) ;
  98. chp1 = MANU 'CHPO' mail 'TATA' 1. ;
  99. chp2 = MANU 'CHPO' mail 'TETE' 2. ;
  100. chp3 = MANU 'CHPO' mail 'TITI' 3. ;
  101. chp4 = MANU 'CHPO' mail 'TOTO' 4. ;
  102. chp5 = MANU 'CHPO' mail 'TUTU' 5. ;
  103. chp6 = MANU 'CHPO' mail 'TYTY' 6. ;
  104. * remplacement d'un CHPOINT dans un LISTCHPO
  105. obj0 = SUIT chp1 chp2 chp3 chp6 chp5 ;
  106. obj1 = SUIT chp1 chp2 chp3 chp4 chp5 ;
  107. ind1 = 4 ;
  108. obj2 = chp6 ;
  109. REMP obj1 ind1 obj2 ;
  110. TEST obj1 obj0 ;
  111. * remplacement de plusieurs CHPOINTs dans un LISTCHPO
  112. obj0 = SUIT chp1 chp6 chp3 chp6 chp5 ;
  113. obj1 = SUIT chp1 chp2 chp3 chp4 chp5 ;
  114. ind1 = LECT 2 4 ;
  115. obj2 = chp6 ;
  116. REMP obj1 ind1 obj2 ;
  117. TEST obj0 obj1 ;
  118. * remplacement de plusieurs MOTs dans un LISTMOTS
  119. obj0 = SUIT chp1 chp6 chp3 chp3 chp1 ;
  120. obj1 = SUIT chp1 chp2 chp3 chp4 chp5 ;
  121. ind1 = LECT 2 4 5 ;
  122. obj2 = SUIT chp6 chp3 chp1 ;
  123. REMP obj1 ind1 obj2 ;
  124. TEST obj0 obj1 ;
  125.  
  126. ** Cas du LISTOBJE (contenant des LISTREEL)
  127. lis1 = PROG 1. 2. 3. ;
  128. lis2 = PROG 4. 5. 6. ;
  129. lis3 = PROG 7. 8. 9. ;
  130. lis4 = PROG 3. 2. 1. ;
  131. lis5 = PROG 6. 5. 4. ;
  132. lis6 = PROG 9. 8. 7. ;
  133. * remplacement d'un OBJET LISTREEL dans un LISTOBJE
  134. obj0 = ENUM lis1 lis2 lis3 lis6 lis5 ;
  135. obj1 = ENUM lis1 lis2 lis3 lis4 lis5 ;
  136. ind1 = 4 ;
  137. obj2 = lis6 ;
  138. REMP obj1 ind1 obj2 ;
  139. TEST obj1 obj0 ;
  140. * remplacement de plusieurs OBJETs LISTREEL dans un LISTOBJE
  141. obj0 = ENUM lis1 lis6 lis3 lis6 lis5 ;
  142. obj1 = ENUM lis1 lis2 lis3 lis4 lis5 ;
  143. ind1 = LECT 2 4 ;
  144. obj2 = lis6 ;
  145. REMP obj1 ind1 obj2 ;
  146. TEST obj0 obj1 ;
  147. * remplacement de plusieurs OBJETs LISTREEL dans un LISTOBJE
  148. obj0 = ENUM lis1 lis6 lis3 lis3 lis1 ;
  149. obj1 = ENUM lis1 lis2 lis3 lis4 lis5 ;
  150. ind1 = LECT 2 4 5 ;
  151. obj2 = ENUM lis6 lis3 lis1 ;
  152. REMP obj1 ind1 obj2 ;
  153. TEST obj0 obj1 ;
  154.  
  155. ** Cas du LISTOBJE (contenant des FLOTTANT)
  156. * remplacement d'un FLOTTANT dans un LISTOBJE
  157. obj0 = ENUM 4. 8. 15. 100. 23. 42. ;
  158. obj1 = ENUM 4. 8. 15. 16. 23. 42. ;
  159. ind1 = 4 ;
  160. obj2 = 100. ;
  161. REMP obj1 ind1 obj2 ;
  162. TEST obj0 obj1 ;
  163. * remplacement de plusieurs FLOTTANTs dans un LISTOBJE
  164. obj0 = ENUM 4. 100. 15. 100. 23. 42. ;
  165. obj1 = ENUM 4. 8. 15. 16. 23. 42. ;
  166. ind1 = LECT 2 4 ;
  167. obj2 = 100. ;
  168. REMP obj1 ind1 obj2 ;
  169. TEST obj0 obj1 ;
  170. * remplacement de plusieurs FLOTTANTs dans un LISTOBJE
  171. obj0 = ENUM 4. 100. 15. 200. 300. 42. ;
  172. obj1 = ENUM 4. 8. 15. 16. 23. 42. ;
  173. ind1 = LECT 2 4 5 ;
  174. obj2 = ENUM 100. 200. 300. ;
  175. REMP obj1 ind1 obj2 ;
  176. TEST obj0 obj1 ;
  177.  
  178.  
  179. ************************************************************************
  180. * O P E R A T E U R R E M P *
  181. * mot3 = REMP mot1 ind1 mot2 ; *
  182. ************************************************************************
  183.  
  184. ** Avec un mot seul
  185. mot1 = 'J''aime la galette, savez-vous comment ?' ;
  186. ind1 = 'galette' ;
  187. mot2 = 'limonade' ;
  188. mot3 = REMP mot1 ind1 mot2 ;
  189. SI (NEG mot3 'J''aime la limonade, savez-vous comment ?')
  190. ERRE 5 ;
  191. FINSI ;
  192.  
  193.  
  194. ** Avec un LISTMOTS
  195. ind1 = MOTS 'galette' 'comment' ;
  196. mot2 = MOTS 'limonade' 'pourquoi' ;
  197. mot3 = REMP mot1 ind1 mot2 ;
  198. SI (NEG mot3 'J''aime la limonade, savez-vous pourquoi ?')
  199. LIST mot3 ;
  200. ERRE 5 ;
  201. FINSI ;
  202.  
  203.  
  204.  
  205. FIN ;
  206.  
  207.  
  208.  

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