Autorisation : Membre
Nb de messages : 1
Inscrit le : Sam 08 Déc 2018, 16:17
Posté le : Sam 08 Déc 2018, 16:48
Bonjour,
Je tiens tout d'abord à préciser que je suis vraiment novice dans la programmation en Basic, et que j'apprends la plupart par moi même en faisant des tests donc ne m'en voulez pas si je fais des choses étranges.
Bref, mon problème est le suivant :
Je me suis mis en tête de coder le "jeu de la vie" sur ma TI-82, et j'en suis au stade où j'essaye de détecter avec pixel-test(Y;X) le nombre de pixels présents autour de chaque pixel de l'écran.
Alors j'ai commencé par détecter le nombre de pixels présents sur une ligne :
0->A */compteur qui s'incrémente à chaque fois qu'un pixel est présent sur une des 8 cases autour d'un pixel/*
2->X */ Coordonnées du pixel principal (central) en abscisse, donc le numéro de colonne. Je le place à 2 car si je le mets à 1 lors de la détection des pixels en X-1 ça me ferait un problème de domaine de définition/*
2->Y //Coordonnées du pixel principal en ordonnée, numéro de ligne
ClrDraw
while X/=93 // x pas égal à 93
IF pxl-test(Y+1,X):A+1->A
IF pxl-test(Y-1,X):A+1->A
IF pxl-test(Y+1,X+1):A+1->A
IF pxl-test(Y,X+1):A+1->A
IF pxl-test(Y+1,X+1):A+1->A
IF pxl-test(Y+1,X-1):A+1->A
IF pxl-test(Y-1,X-1):A+1->A
IF pxl-test(Y,X-1):A+1->A
Disp A
Pause
0->A
X+1->X
End
Le problème est que lorsque je lance le programme, j'ai systématiquement une erreur de domaine, et quand je fais goto pour voir l'erreur, ça me montre la 2ème ligne de IF : IF pxl-test(Y-1,X):A+1->A .
Et plus étrange encore, si je remplace le Y-1 par : Y(petit-)1 et bien l'erreur apparaîtra un ligne dessous lors de la prochaine execution du programme. Et si je remplace tous les - par des (petits-) bah j'ai encore le même problème au final. (de toute façon remplacer les - n'avait pas grand sens)
Bref, je deviens fou, je ne comprends pas, est on d'accord pour dire que le systeme de colonne/ligne est fait comme ça ? :
_X1234-->94
Y
1
2
|
v
64
Alors IF pxl-test(Y-1,X):A+1->A devrait être là :
///Légende///
pixel principal: .
pixel-test(Y-1;X+1): *
espace(enfin il n'y a rien à cet endroit c'est juste pour que ça s'affiche correctement sur le site):_
_X1234-->94
Y
1___*
2__.
|
v
64
Donc où est le problème !!!
Merci d'avance de votre aide et de votre courage pour avoir lu ce pavé indigeste