<< Retour au sommaire

 

L’embranchement conditionnel Select-Case

 

 

 

Le sommaire :

1.      Syntaxe de base ;

2.      Syntaxe élaborée.

 

Syntaxe de base

 

Select permet de vérifier le contenu d’une variable et d’en déclencher le traitement approprié.

 

La syntaxe :

Select Variable

Case valeur 1

Traitement 1

Case valeur 2

Traitement 2

Case valeur 3

Traitement 3

Etc.

EndSelect

 

La description :

Variable est la variable sur laquelle les comparaisons de valeurs sont réalisées.

 

Case est le mot clé qui précède une valeur de comparaison.

Lorsqu’une valeur correspond au contenu de la variable en cours de vérification, c’est le traitement, et uniquement le traitement situé juste après la valeur qui est exécuté.

 

Le mot clé EndSelect ferme la structure Select.

 

Voici un exemple dans lequel 2 cas de figure sont traités :

« oui » et « non ».

 

1.      OpenConsole ()

2.      Print ("Aimez-vous PureBasic oui/non ")

3.      Reponse$ =Input ()

4.      Select Reponse$ ; Traitement de la réponse

5.      Case "oui"

6.      ; L'utilisateur aime bien PureBasic

7.      Message$ ="Chouette ! On va pouvoir continuer..."

8.      Case "non"

9.      ; L'utilisateur ne court pas après PureBasic

10.  Message$ ="Eh zut ! Insistez !"

11.  EndSelect

12.  PrintN (Message$)

13.  Print ("Pressez la touche Entree pour continuer...")

14.  Input ()

 

Télécharger le fichier exemple, Source15.pb >>

 


Syntaxe élaborée

 

Voici maintenant une syntaxe complète :

 

Select Variable

Case valeur to valeur

Traitement 1

Case Valeur to valeur

Traitement 2

Etc.

Default

Traitement 3

EndSelect

 

La description

Dans cette seconde proposition, nous avons rajouté 2 choses :

1.      L’intervalle, c’est la possibilité de comparer le contenu de la variable à des sous ensembles de valeurs, le mot clé à intégrer est To ; Par exemple, si vous souhaitez qu’un traitement soit exécuté si la variable est comprise entre 15 et 30 :

Case 15 To 30

 

2.      Default, il s’agit du traitement qui est exécuté si aucun traitement n’a été exécuté dans le Select.

 

Dans l’exemple suivant, nous allons traiter 3 intervalles d’âges :

 

  1. OpenConsole ()
  2. Print ("Saisissez votre age ici : ")
  3. Chaine$ = Input ()
  4. Age.B =Val (Chaine$) ; Conversion de la chaîne en un entier
  5. Select Age.B
  6. ; Traitement de l'age
  7. Case 1 To 17
  8. ; L'utilisateur a entre 1 et 17 ans
  9. Message$ = "Salut Moussaillon !"
  10. Case 18 To 49
  11. ; L'utilisateur a entre 18 et 49 ans
  12. Message$ ="Salut capitaine !"
  13. Default
  14. ; L'utilisateur a 50 ans ou plus
  15. Message$ ="Salut vieux loup de mer !"
  16. EndSelect
  17. PrintN (Message$)
  18. Print ("Pressez la touche Entree pour continuer...")
  19. Input ()

 

Télécharger le fichier exemple, Source16.pb >>

 

Philippe BOULANGER