RESTORE
DESCRIPTION.
L'instruction RESTORE permet de restaurer, ou d'ignorer, des données contenues dans des instructions DATA, en modifiant manuellement la position du pointeur de lecture des données.
Voir l'instruction RESTORE DATA pour repositionner le pointeur à la position mémorisée par LOCAL DATA.
Voir l'instruction RESTORE ERROR qui restaure de l'état de capture interceptée ON ERROR LOCAL.
Voir l'instruction RESTORE LOCAL qui restaure les valeurs des paramètres et des variables LOCAL et/ou PRIVATE.
SYNTAXE.
RESTORE
RESTORE ligne
RESTORE etiquette
RESTORE +entier
REMARQUES.
ligne doit être un nombre entier correspondant à un numéro de ligne valide du programme.
etiquette doit être l'identifiant d'une étiquette existante dans le script du programme.
entier doit être un nombre entier positif, différent de 0.
La forme RESTORE ligne déplace le pointeur de lecture des données sur la première valeur suivante l'instruction DATA présente sur la ligne ligne du programme, où sur la ligne suivante la plus proche de ligne.
La forme RESTORE etiquette déplace le pointeur de lecture des données sur la première valeur suivante l'instruction DATA présente sur la ligne suivante la plus proche de l'ancre etiquette.
La forme RESTORE +entier déplace le pointeur de lecture des données sur la valeur suivante l'instruction DATA décalée de entier lignes suivantes, ou la plus de la plus proche suivante. Il est fortement conseillé de placer les instructions DATA immédiatement après l'instruction RESTORE +entier afin d'éviter des résultats inattendus lors de la compilation du programme.
Quelque soit la forme de son appel, l'instruction RESTORE peut être utilisée n'importe où dans le script, même avant toute instruction DATA, pour ignorer certaine données.
Si le pointeur de lecture des données a atteint la dernière donnée contenue dans les instructions DATA du script, toute tentative de lecture d'une nouvelle valeur déclenchera une erreur, sauf si une instruction RESTORE, ou RESTORE DATA valide, est utilisée pour déplacer le pointeur de lecture des données sur une position valide.
Rappel : 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.
Voir l'instruction DATA pour insérer des données dans un script BBC BASIC.
Voir l'instruction LOCAL DATA pour plus de détails sur la mémorisation du pointeur de lecture des 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. 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 2. 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
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
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.