ON - RETURN

Dictionnaire des mots-clés BASIC, C64

Du Commodore 64

ON

Type : Instruction conditionnelle

Syntaxe : ON expression numérique GOTO numéro de ligne [,numéro de ligne...]

ON expression numérique GOSUB numéro de ligne [,numéro de ligne...]

L'expression numérique doit être évaluée et tronquée à une valeur comprise entre 0 et 255.

Modes : Les modes direct et programme sont tous deux valides.

Jeton : $91 (145)

Entrée abrégée : Aucune

Fonction :

ON permet un branchement conditionnel vers l'un des numéros de ligne listés, en fonction de la valeur de l'expression qui suit ON.

Si cette valeur est 1, le premier numéro de ligne est utilisé ; si elle est 2, le deuxième, et ainsi de suite.

Si la valeur est 0 ou trop grande pour la liste, la ligne est ignorée et le traitement se poursuit avec l'instruction suivante.

Ceci offre une méthode lisible pour programmer plusieurs instructions IF, à condition qu'une variable prenne des valeurs consécutives : 1, 2, 3, ...

Exemples :

1. ON SGN(X)+2 GOTO 100,200,300

La ligne ci-dessus se divise en trois branches, selon que X soit négatif, nul ou positif.

2. 90 ON ASC(IN$)-64 GOTO 100,200,300,400

Cette ligne passe à l'une des lignes listées, selon que IN$ soit A, B, C ou D.

3. 30 ON 6*RND(1)+1 GOSUB 100,200,300,400,500,600

Cette fonction sélectionne au hasard l'une des six sous-routines d'un jeu.

4.

100 ON X GOTO 400,410,420,430,440,450
101 ON X-6 GOTO 460,470,480

Ci-dessus figure un exemple de la manière dont les options peuvent être réparties sur plusieurs lignes de programme (à condition que X ne soit pas égal à 0).

OPEN