Sauts forcés
Jusqu'ici, nous avons vu comment certains sauts vers une autre partie d'un programme peuvent être effectués
en fonction de décisions logiques basées sur des situations vraies ou fausses. Des sauts similaires
peuvent être réalisés lorsqu'une variable particulière est reconnue, c'est-à-dire indépendamment
de toute autre condition. GOTO et GOSUB sont des exemples de saut "forcé".
ON
structure : sauter en fonction d'une variable
On variable Proc liste de procédures
On variable Goto liste de lignes numérotées ou de labels
On variable Gosub liste de lignes numérotées ou de labels
ON peut être utilisé pour forcer le programme à sauter vers une position prédéfinie lorsqu'il reconnaît une variable spécifiée. De plus, les sauts peuvent être faits vers plusieurs positions au choix, en fonction de la valeur contenue dans la variable au moment où elle est repérée. ON peut forcer un saut vers l'une des structures suivantes.
Procédures. Lors de l'utilisation de ON ... PROC, une ou plusieurs procédures nommées sont utilisées comme destination de saut, selon la valeur actuellement contenue dans une variable. Consultez la ligne suivante :
X> On X Proc PROCEDURE1,PROCEDURE2
Cela revient exactement à écrire :
X> If X=1 Then PROCEDURE1 If X=2 Then PROCEDURE2
Il est important de noter que les procédures utilisées de cette manière ne peuvent pas inclure de paramètres. Si des informations doivent être transmises à la procédure, elles doivent être placées dans une variable globale, comme expliqué au Chapitre 5.5.
Goto est utilisé pour sauter vers une ligne numérotée ou un label parmi une liste, selon le résultat d'une expression. Par exemple :
E> Print "Tapez une valeur de 1 à 3" Input X On X Goto LABEL1,LABEL2,LABEL3 LABEL1: Print "Prêt" LABEL2: Print "Partez" LABEL3: Print "Go !"