label bug |
Auteur |
Message |
Fryke
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
|
Posté le : Dim 03 Fév 2013, 15:52
|
|
|
bonjour à tous(tes) aujourd'hui j'ai essayé de programmer un petit jeu mais dans mes tests du jeu j'ai un problème très gênant c'est que dans la zone où je fait
et bien il y a un bug très gênant qui est que la calculette m'affiche un err: label alors que le label est bien défini j'aimerais savoir si c'est un bug ou si je suis un boulet
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82 |
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Dim 03 Fév 2013, 16:18
|
|
|
Il y a un bug. Tu devrais poster tout ton code pour qu'on puisse en situer l'origine.
Lbl et Goto se saisissent avec prgm+9 et prgm+0.
Ne place rien sur la même ligne que ces commandes, c'est plus sûr.
Vérifie qu'il n'y a pas d'autre goto/lbl qui plante.
Tu peux remplacer facilement une paire de goto/lbl par une boucle While ou Repeat. C'est plus rigoureux et cela ne buggue pas tant qu'on écrit correctement les tests, contrairement au goto qui peut poser des problèmes. http://tout82.free.fr/forum/sujet.php?sujet=2757
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
maxence
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 22 Déc 2012, 12:32
|
Posté le : Dim 03 Fév 2013, 16:50
|
|
|
Un label n'est détecté uniquement que si c'est la première commande de la ligne, par exemple:
Code | :Disp "BONJOUR":Lbl A |
Le Label A ne sera pas détecté car il n'est pas en premier sur la ligne, mais séparé par le symmbol ":", il faut un retour à la ligne.
|
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Dim 03 Fév 2013, 17:10
|
|
|
Exact, et c'est encore la meilleure explication. (d'ailleurs tu es plus précis que mon affirmation sur le contenu des lignes)
(on a la même chose avec DelVar suivi de End)
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
Fryke
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
|
Posté le : Dim 03 Fév 2013, 18:51
|
|
|
le lbl est bien premier et il est seul idem pour le goto
en général le code qui donne ce bug est
Code | lbl 1
getkey->A
If A=24:B-1->B
If A=26:B+1->B
output(8,B,"--
Goto 1
|
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82 |
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Dim 03 Fév 2013, 18:56
|
|
|
Ce code génère une erreur domaine car il ne faut pas mélanger A et X (l'un pour les touches, l'autre pour l'abscisse) et initialiser X.
Je l'ai testé sans constater d'erreur étiquette.
EDIT : puisque le code ci-dessus a été édité, ne tenez plus compte de ma remarque sur les variables. Il faut seulement initialiser B.
J'ai connu un programme qui causait des bugs innexpliqués sur ce forum. Je ne sais plus où, j'ai seulement conservé le code.
Je me demande si le Lbl a été saisi avec le menu prgm et si des lignes de programme précédentes contiennent un Lbl mal saisi. En effet il suffit de saisir un Lbl à mauvaise étiquette pour planter même si aucun goto ne pointe vers lui.
(un nombre de caractères inadéquat, des tokens autres qu'alphanumérique)
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
Fryke
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
|
Posté le : Dim 03 Fév 2013, 19:05
|
|
|
l'erreur domaine est causé par le fait que de base B=0 donc qu'il n'est pas dans l'écran en rajoutant un 1->B avant le Lbl 1 ça passera
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82 |
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Dim 03 Fév 2013, 19:11
|
|
|
Non cela ne marchera pas car getKey remet à zéro. Il faut utiliser plusieurs variables. J'ai choisi X pour l'abscisse.
EDIT: message périmé après édition du code précédent.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
Fryke
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
|
Posté le : Dim 03 Fév 2013, 19:15
|
|
|
je me suis trompé en rédigeant le code mais j'ai édité et là c'est mieux
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82 |
|
|
|