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

ON PROC

DESCRIPTION.


L'instruction ON ... PROC provoquera l'exécution d'une certaine procédure selon la valeur d'une référence.




SYNTAXE.


ON reference PROC procedurea , procedureb , ... , proceduren ELSE alternative




REMARQUES.


reference doit être un nombre entier strictement positif, supérieur à zéro. En général, reference sera l'identifiant d'une variable valide, mais reference peut aussi être une valeur retournée par une opération ou une fonction du BBC Basic ou personnalisée. Si reference est une valeur numérique autre qu'un entier, la partie décimale sera tronquée.


procedure doit être le nom d'une procédure existante et valide. Si l définition de la procédure attends des paramètres, ils deront être passés entre parenthèses à la suite de procedure.


alternative peut être une ancre ou procédure personnalisée ou tout autre instruction valide du BBC BASIC. Si altenative est absente à la suite de l'instruction ELSE, le programme se poursuivra à l'instruction suivante.


Note : la clause ELSE alternative est optionnelle mais vivement recommandée, car en son absence, si référence et en dehors des options prévues, une erreur se produira et le programme sera interrompu.


Les instructions composées ON ... PROC permet de diriger la suite de l'application en fonction de la valeur de référence au moment de l'appel de l'instruction composée. Si la valeur de reference est inférieur à 1 ou si elle est supérieur aux options prévues à la droite de la clause PROC, une erreur se produira arrêtant le programme, sauf si une clause ELSE est présente. 


Le choix de l'instruction composée ON ... PROC pour diriger le flux de l'application n'est pas considérée comme une solution élégante, on préférera utiliser un bloc selon que avec l'instruction CASE ... OF.



Voir l'instruction composée ON ... GOTO pour un saut inconditionnel sans retour vers une ancre selon la valeur d'une référence.

Voir l'instruction composée ON ... GOSUB pour un saut inconditionnel avec retour vers une ancre selon la valeur d'une référence.

Voir l'instruction CASE ... OF pour plus de détails sur tests conditionnels selon que.

Voir l'instruction PROC pour définir une procédure personnalisée.




EXEMPLE.


REPEAT 

kvaleur =  RND( 4 )

ON kvaleur PROC PROC_A , PROC_B ,  PROC_C , ELSE PRINT "Le tirage est 4"

UNTIL kvaleur=  4

END 


DEF PROC_A : PRINT "Le tirage est 1" : ENDPROC

DEF PROC_B : PRINT "Le tirage est 2" : ENDPROC

DEF PROC_C : PRINT "Le tirage est 3" : ENDPROC

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