Poster un nouveau sujet Poster une réponse
Problème avec pixel-test
Auteur Message
Zanuka



Autorisation : Membre
Nb de messages : 1
Inscrit le : Sam 08 Déc 2018, 16:17
Posté le : Sam 08 Déc 2018, 16:48   Citer 

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

 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2025 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink