DELA |
Delapermet de supprimer des éléments dans des tableaux mono-dimensionnés, à partird'un indice donné.
Dela début [ , nombre [ , borne ] ] liste_nom_var
Elément | Description | Restrictions |
Expression numérique entière de l'indicedans les tableaux à partir duquel se fait la suppres- sion. | début doit : | |
Expression numérique entière du nombred'éléments à supprimer. | nombre > 0 | |
Expression numérique entière de l'indicedans les tableaux où se termine la suppression. | borne ne doit pas dépasser la pluspetite des bornes supérieures des tableaux. | |
Liste de | Aucune. | |
nom_de_variable désignant le tableaudans lequel s'effectue la suppression. Dans le cas d'un tableau déroulant, ils'agit de la variable de bas de tableau. | Aucune. |
# Suppression de lignes dans un tableau déroulant(dont la variable de
# bas de tableau a pour nom NLI) selon des paramètresvariables
Dela
# On dispose de 2 tableaux d'éléments (issus d'un jeu de libellés sur
# des noms de pilotes de terminaux). L'un (NOM) comporte les noms des
# fichiers, l'autre (CAR) les caractères "associés" :
0 | 1 | 2 | 3 | 4 | 5 | ... | |
CAR | A | A | H | I | V | V | ... |
NOM | ansi | at386 | hp | ibm3151 | vt200 | vt200 | ... |
# Supposons que l'on veuille y supprimer 2 éléments en 3ème position
# (c'est-à-dire à partir du rang 2) :
Dela 2, 2 CAR, NOM
# Le résultat de cette instruction sera :
0 | 1 | 2 | 3 | ... | |
CAR | A | A | V | V | ... |
NOM | ansi | at386 | vt200 | vt200 | ... |
# Supposons maintenant que la borne ait une valeurinférieure au
# nombre d'éléments des tableaux :
Dela
# Le résultat est alors :
0 | 1 | 2 | 3 | 4 | 3 | ... | |
CAR | A | A | V | V | ... | ||
NOM | ansi | at386 | vt200 | vt200 | ... |
Delapermet de supprimer des éléments (1 par défaut) dans un ensemble de tableauxmonodimensionnés. Dans la syntaxe de l'instruction, début détermine l'indice(commun à tous les tableaux) où commence la suppression et nombre désigne lenombre d'éléments à supprimer.
Dans chaque tableau, les éléments sont 'décalés' vers la gauche depuis lafin du tableau (c'est la 'borne' par défaut) d'un nombre de positions égal à'nombre'. Les 'nombre' derniers éléments du tableau sont mis à zéro.
Donner une valeur à 'borne' qui soit inférieure à la plus petite des bornesinférieures des tableaux (une valeur supérieure n'aurait pas de sens) supposeque l'on s'intéresse à une restriction de ces tableaux. Dans ce cas, les'nombre' éléments avant 'borne' (y compris 'borne') sont mis à zéro, lessuivants ne sont pas modifiés. Le dessin qui suit simule la suppression de'nombre' positions dans un tableau d'éléments, D désignant le 'début' et B la'borne' (notons que l'élément d'indice D est perdu) :
D< perdus> B
D perdus |
| ||||||||||||||||
Avant | I | I | ... | I | P | P | ... | P | D | D> | D | ... | D | I | I | ... | I |
Après | I | I | ... | I | D | D | D | ... | D | ... | I | I | ... | I | |||
Inchangés | Décalés | Nombre | Inchangés |
Suppression de lignes dans un tableau déroulant
ERMODE(10) | début,nombre ou borne n'est pas numérique. |
ERINDI( 8) | L'undes indices sort des bornes de l'un destableaux. |
ERDOM(50) | nombre<= 0. |
ERDIM(55) | L'unedes variables n'est pas mono-dimensionnée. |
Adonix X3(r) L4G |