Forum

Catégorie : Programmes
Forum : Aide à la programmation
Vues : 643
Réponses : 10
Type : discussion
Etat : réponses autorisées

Variable qui s'efface toute seule ?

F-BVXT le 27/06/2012 à 22:41
Bonjour,
Je suis en train de faire un programme (je le posterais quand je l'aurais terminé), mais j'ai un problème avec une variable (Y) qui s'efface toute seule...

Code
:Repeat K=105
:X->A
:Y->B
:Pt-On(X,Y,3
:getKey->K
:X-6(K=24)+6(K=26->X
:X+6(X=15)-6(X=81->X
:Y+6(K=25)-6(K=34->Y
:Y-6(Y=64)+6(Y=-2->Y
:If K and min(AB[différent de]
{L3(1)L3(2),L3(3)L3(4),L3(5)L3(6),L3(7)L3(8),L3(9)L3(10),L3(11)L3(12),L3(13)L3(14),L3(15)L3(16),L3(17)L3(18),
L3(19)L3(20),L3(21)L3(22),L3(23)L3(24),L3(25)L3(26),L3(27)L3(28),L3(29)L3(30),L3(31)L3(32),L3(33)L3(34:Pt-Off(A,B,3
:If K=21
:Then
:ClrDraw
:RecallPic 2
:Pause
:ClrDraw
:RecallPic 1
:End
:End


En fait, tout fonctionne jusqu'à ce que j'appuie sur [2nde], là ça m'efface l'image actuel, me met la 2 puis met le jeux en pause. J'ai identifié que le bug venait d'ici parce qu'en arrêtant le programme brutalement, je vois que la valeur de X n'a pas bougé mais celle de Y si.

J'ai eu beau cherché j'ai rien trouvé et ça me rend vraiment crazy.gif

Si vous connaissez la solution à ce problème ?

Merci d'avance.
F-BVXT le 27/06/2012 à 23:01
J'ai trouvé la réponse dans un article de Linka mais c'est quand même bizarre.
F-BVXT le 27/06/2012 à 23:17
L'affichage de la page bug, c'est le cas pour vous aussi ?
Je crois que c'est du à une ligne de mon programme qui est trop longue mais comme le côté droit de la page ne s'affiche pas, je ne peut pas éditer clown.gif

Bon, je crois qu'il faut que j'arrête de toucher à des objets électroniques, parce que bientôt je vais décrocher la palme du meilleur bugger cry.gif
linkakro le 27/06/2012 à 23:25
La page ne buggue plus dans le navigateur IE9.
Ainsi tu peux l'utiliser pour accéder à l'icone d'édition de ton message, et enfin éditer le message pour corriger la mise en page des autres navigateurs.

Comme a dit Sandro dans l'article, certaines variables sont à la fois système et utilisateur. C'est particulièrement le cas de X,Y,T,thêta,n.
sandro le 27/06/2012 à 23:27
la solution : utiliser d'autres variables que X et Y
F-BVXT le 27/06/2012 à 23:34
Oui, ici en l'occurence je ne vais pas changer Y mais mettre "B->Y" parce que sinon il faut que je le change je sais pas combien de fois dans mon programme eyeonly.gif
Citation
La page ne buggue plus dans le navigateur IE9.
Ainsi tu peux l'utiliser pour accéder à l'icone d'édition de ton message, et enfin éditer le message pour corriger la mise en page des autres navigateurs.

Merci Linka kiss.gif
EGUL le 03/07/2012 à 10:35
As-tu pensé a remettre la valeur de K a 0?
F-BVXT le 03/07/2012 à 19:02
Ça serait inutile ici.
EGUL le 03/07/2012 à 20:05
bah sachant qu'il est dans une boucle, si la valeur de K ne change pas, les opérations s'enchaînent et c'est pour ça que je suppute la présence d'un 0->K avant le codeTouche
F-BVXT le 03/07/2012 à 20:15
Je mettais aussi avant des 0->K mais bien que je ne connaisse pas la règle, tu peux vérifier, K revient à 0 à chaque que la calculette lit CodeTouche->K.

EDIT : En fait, après plusieurs essais, je peux dire que faire CodeTouche->K réinitialise la valeur de K. Il n'y a donc pas besoin de faire EffVar K
EGUL le 03/07/2012 à 20:29
Ok, tu m'apprends une chose!
Bah je vais chercher une éventuelle erreur si j'ai le temps