DATA |
Données |
|---|---|
| Basic Couleur étendu (Extended Color Basic) | Basic du Coco 2 |
Syntaxe
| DATA [dataitem] [, dataitem] [, ... ] |
Paramètres
| Nom | Description |
|---|---|
| dataitem | Ces paramètres doivent être séparés par des virgules. Pour les données numériques, ils doivent être écrits sous forme de nombre dans un format compatible avec BASIC (par exemple, 4096, 4.096E+3 ou &H1000). Pour les données de type chaîne de caractères, les éléments de données peuvent être n'importe quelle combinaison de caractères, à l'exception des deux-points et des virgules, sauf si la chaîne est entourée de guillemets. |
Description
Cette commande permet de mettre un regroupement de données.
Remarques
- Cette instruction permet de construire une ou plusieurs listes de données constantes accessibles via l'instruction READ. Selon la nature de chaque élément de données, les données peuvent être lues dans une variable numérique ou une variable chaîne de caractères.
- L'instruction DATA est une instruction très particulière, car elle permet d'ajouter des instructions supplémentaires à la fin d'une liste de données
et d'exécuter et de lire ces instructions comme s'il s'agissait d'entrées réelles ! Prenons les exemples suivants :
Ces deux courts programmes BASIC sont identiques, sauf que l'exemple numéro 2 lit les données dans la variable chaîne de caractères B$ au lieu de la variable numérique B. Curieusement, l'exemple numéro 2 s'exécutera sans erreur, mais l'exemple numéro 1 génère une erreur «?SN ERROR IN 10». Notez cependant que cette erreur ne se produit qu'après l'exécution complète de la ligne 10. Ceci est confirmé par l'écran s'effaçant, un bloc graphique orange apparaît sur la ligne centrale et la valeur 255 est attribuée à la variable A. Cette étrange erreur signifie donc qu'aucune erreur ne s'est produite avant l'instruction READ à la ligne 20. Mais qu'en est-il de l'exemple numéro 2 ? Si vous l'exécutez, vous remarquerez que B$ prend la valeur des instructions BASIC tokenisées une par une à chaque passage dans la boucle READ. Cela signifie essentiellement que les deux-points et les virgules sont reconnus comme délimiteurs. Si vous supprimez les deux points entre DATA et CLS dans l'exemple numéro 2, l'écran ne s'effacera pas, mais le reste des instructions sera exécuté et vous obtiendrez une erreur «?OD ERROR IN 20».
Nous n'avons pas découvert d'utilité particulière à cette particularité de l'instruction DATA, mais vous pourriez peut-être en trouver l'utilité.
Exemples