Search this site
Embedded Files
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
  • More
    • Accueil
    • BBC BASIC
    • BBC OS
    • BBC MODULES
    • RUBRIQUES
    • LIENS

⇨ MENU ⇨ BBC BASIC

DATA

DESCRIPTION.


L'instruction DATA introduit une liste de données brutes, numériques et/ou alphanumérique, qui pourront être accessibles avec l'instruction READ.


Voir l'instruction LOCAL DATA pour mémoriser la position actuelle du pointeur de données des DATA.

Voir l'instruction RESTORE DATA pour repositionner le pointeur à la position mémorisée par LOCAL DATA.




SYNTAXE.


DATA donneea , doonneeb , ... , donneen




REMARQUES.


donnee doit être une chaine de caractères ou une valeur numérique.


Bien que les chaines de caractères puissent être notées sans présence de guillemets ("), sauf si elles doivent contenir des virgules ou des espaces de début et/ou de fin, cette pratique reste déconseillée. Les données numériques, elles, ne doivent jamais être entourées de guillemets, mais peuvent être des opérations mathématiques (+, -, *, /, ...).


Les données numériques et alphanumériques peuvent se trouver sur une même ligne.


Les données doivent être séparées par une virgule. La dernière donnée ne doit pas être suivie d'une virgule.


Les données peuvent être listées sur plusieurs instructions DATA.


La ou les listes de données, déclarées par des instructions DATA doivent être présentent en début de script, avant toute autre instruction ou fonction BBC BASIC, à l’exception de l'instruction REM introduisant des ligne de commentaires ou une instruction RESTORE pour ignorer certaines données.


Les données contenues à la suite des instructions DATA pourront être lues, acquises, grâce à une ou plusieurs instruction READ.


L'instruction RESTORE permet de réinitialiser le pointeur de lecture des données à la première données ou à une position définit.


L'instruction combinée LOCAL DATA enregistre la position actuelle du pointeur de lecture des données, pour le replacer sur cette position lors d'un appel de l'instruction combinée RESTORE DATA. L'utilisation de RESTORE DATA ou de LOCAL DATA efface la valeur mémorisée par l'appel de LOCAL DATA précédent.



Voir l'instruction LOCAL DATA pour plus de détails sur la mémorisation du pointeur de lecture des instructions DATA. 

Voir l'instruction READ pour plus détails sur la lecture des données contenues dans les instructions DATA.

Voir l'instruction RESTORE pour plus détails sur la réinitialisation des données contenues dans les instructions DATA.

Voir l'instruction RESTORE DATA pour plus détails sur le rappel de la mémorisation d'une instruction LOCAL DATA.




EXEMPLES.


Exemple 1. Cas général.

DATA "Janvier" , 31 , "Fevrier" , 28 , "Mars" , 31

DATA "Avril" , 30 , "Mai" , 31 , "Juin" , 30

DATA "Juillet" , 31 , "Aout" , 31 , "Septembre" , 31

DATA "Octobre" , 31 , "Novembre" , 30 , "Decembre" , 31


FOR kvaleur = 1 TO 12

READ kmois$ , kjours : REM - retourne 2 donnees consécutives suivantes

PRINT "Le mois de " ; kmois$ ; " a " ; kjours " jours."

NEXT kvaleur

PRINT "Fin du test."

END



Exemple 2. Restaurer toutes les données.

DATA "Janvier" , 31 , "Fevrier" , 28 , "Mars" , 31

DATA "Avril" , 30 , "Mai" , 31 , "Juin" , 30

DATA "Juillet" , 31 , "Aout" , 31 , "Septembre" , 31

DATA "Octobre" , 31 , "Novembre" , 30 , "Decembre" , 31


REPEAT

REPEAT 

INPUT "Quel mois (de 1 a 12 ) ou 0 pour quitter " , kmois

UNTIL kmois < 13

IF kmois = 0 THEN EXIT REPEAT

FOR kvaleur = 1 TO kmois : READ kmois$ , kjours : NEXT kvaleur

PRINT "Le mois de " ; kmois$ ; " a " ; kjours " jours."

RESTORE : REM - replace le ppointeur sur la premiere donnee de la premiere instruction DATA

UNTIL FALSE

PRINT "Fin du test."

END



Exemple 3. Ignorer certaines données.

Restore +3 : REM - ignorer les 2 premieres instructions DATA

DATA 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10

DATA 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20

DATA 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30

DATA 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40


READ kdonnee : REM - retourne la premiere donnee de la troisieme instruction DATA

PRINT kdonnee

RESTORE : REM - replace le pointeur sur la premiere donnee de la premiere instruction DATA

READ kdonnee : REM - retourne la premiere donnee de la premiere instruction DATA

PRINT "Fin du test."

END



Exemple 4. Mémoriser et restituer la position du pointeur.

DATA 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10

DATA 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20

DATA 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30

DATA 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40


khasard = RND( 10 ) + 15

PRINT "Premiere serie."

FOR kvaleur = 1 TO khasard

READ kentier

PRINT STR$( kentier ) ; " " ;

NEXT kvaleur


FOR ktour = 1 TO 2

LOCAL DATA : REM - memorise la position du pointeur de lecture

PRINT

PRINT "Deuxieme serie - lecture : " ; ktour

FOR kvaleur = ( khasard + 1 ) TO 40

READ kentier

PRINT STR$( kentier ) ; " " ;

NEXT kvaleur

RESTORE DATA : REM - reposition le pointeur sur sa position memorise

NEXT ktour


PRINT

READ kdebut

PRINT "La serie 2 commence a la valeur : " ; kdebut

PRINT "Fin du test."

END

Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de

vos remarques, vos commentaires et de vos suggestions.

Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour

TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER

avec un exemple de résolution à télécharger pour vous inspirer.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse