2
 Seconde 
1
 Première 
T
Terminale

Partagez
Aller en bas
avatar
Maitre Casio
Maitre Casio
Date d'inscription : 22/10/2015
Voir le profil de l'utilisateur

5 : Organiser son programme

le Jeu 3 Déc - 21:37

Le 21 Février 1916, le général allemand Diemling annonçait la "dernière tentative contre la France.
L'empereur allemand était sur les lieux, prêt à faire à Verdun l'entrée triomphale qu'il avait manquée à Nancy et à Paris.
Il n'y avait ce jour là à Douaumont qu'une équipe de vingt-trois canonniers, et elle dormait au petit jour.
Ce cours ne raconte pas leur histoire.


Les fonctions de contrôle



Les fonctions que nous allons voir aujourd'hui sont assez variées, et moins indispensable que celles que nous avons pu voir précédemment.
(Il faut dire, c'est difficile de faire plus utile..)
Elles permettent de "découper" son programme, le rendre plus lisible et de mieux le contrôler, tout simplement !


Lbl - Goto

La fonction "Lbl" va forcément avec la fonction "Goto".
Le principe est simple : On place un label (une borne, une étiquette..) à un endroit dans le programme avec Lbl, et on donne l'instruction d'aller à ce label avec Goto.
Puisqu'un exemple vaut tous les discours :

Code:

1-> H
10->A
lbl 1
While H<10
Goto 2
WhileEnd

lbl 2
H+1-> H

On place un label avec :
Code:
Lbl <nombre>

Et on accède à ce label avec :
Code:
Goto <numéro du label>

Notez bien que ces numéros vont de 1 à 9. Vous pouvez également placer un label avec une lettre :
Code:
Lbl <lettre>



Alors, encore une fois, vous allez me demander : "Mais, à quoi ça sert ?!?"
La réponse : Içi, à rien. Dans un programme long : à mieux comprendre.

Imaginez, vous avez un programme de 200 lignes (ça s'atteint très vite, croyez moi)
Vous êtes sur un écran qui affiche 7 lignes. Si vous faites juste un gros bloc, vous passerez des jours à vous y retrouver.
Imaginons que l'on fasse un jeu, avec des conditions de défaites ou de victoire.
On devrait alors écrire toutes les actions de fin en plein milieu de la boucle principale..
Évidemment, toute les lignes se ressemblent : des boucles, des conditions, des tests, des assignations de variables..
C'est là qu'interviennent les labels.


Vous vous rendrez vite compte que le meilleur moyen de rendre un programme lisible est de l'organiser en différentes "fonctions".
En Basic Casio, on le fait avec les labels !


ATTENTION : Les labels ne remplacent en aucun cas les boucles !
Il ne faut JAMAIS écrire quelque chose comme :
Code:

Lbl 1
<actions>
if <conditions>
then goto 1
ifend
Au lieu d'utiliser une boucle Do LpWhile.
Tout d'abord parce que cela signifie qu'il vous faut un label par boucle, et les nombre de label va vite devenir ridicule.
En plus, il n'est jamais bon de placer des labels à l'intérieur d'une boucle, ça crée très souvent des bugs, ou des erreurs de syntaxe tout simplement.
En résumé, retenez que les labels sont vraiment utiles, mais qu'ils ne s'utilisent pas n'importe comment.




Poser une questionPour poser une question sur ce cours, c'est ! ici !
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum