π
<-

Erreur programmation Snake

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Erreur programmation Snake

Message non lude pvdu09 » 10 Oct 2013, 21:19

Bonsoir à tous,

J'ai programmé un snake sur ma Ti-83 mais j'ai l'erreur ":Err Argument" et j'ai pas compris ou je me suis trompé donc si vous pouviez m'aider ça serait trop génial ^^
Merci d'avance:)

Voilà le code:
Code: Tout sélectionner
0->Xmin:94->Xmax
0->Ymin:62->Ymax
AxesOff
ClrDraw
Line(1,0,1,61
Line(1,61,94,61
Line(94,61,94,0
Line(94,0,1,0
47->X:31->Y
0->H:-1->V
randInt(2,93->I
randInt(2,60->J
Pxl-On(J,I
{X->L1:{Y->L2
1->L:1->P
Repeat pxl-Test(Y,X) and not(X=I and Y=J
P+1->P
If P>L:1->P
Pxl-Off(L2(P),L1(P
Pxl-On(Y,X
X->L1(P:Y->L2(P
If X=I and Y=J
Then
L-1->L
Ans->dim(L1
Ans->dim(L2
randInt(2,93->I
randInt(2,60->J
Pxl-On(J,I
End
getKet->K
If K=24:-1->H
If K=26:1->H
If K=24 or K=26:0->V
If K=25:-1->V
If K=34:1->V
If K=25 or K=34:0->H
X+H->X
Y+V->Y
End


P.S. : Si vous avez un peu de temps à perdre ce serait trop sympa de m'expliquer comment on programme des murs sur lesquels on meurt quand on les touche :)
Avatar de l’utilisateur
pvdu09
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Prochain niv.: 13.3%
 
Messages: 4
Inscription: 10 Oct 2013, 21:12
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: 2nde

Re: Erreur programmation Snake

Message non lude critor » 10 Oct 2013, 22:03

Quand la calculatrice te donne l'erreur, appuie sur :ns2: au lieu de :ns1:, et elle te montrera la ligne qui ne lui plaît pas :)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 53.5%
 
Messages: 42398
Images: 17115
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Erreur programmation Snake

Message non lude Bisam » 10 Oct 2013, 22:26

Euh, dans un Snake, la longueur du serpent est censée augmenter, et non diminuer... :p
Ce devrait être
Code: Tout sélectionner
L+1->L
à la place de
Code: Tout sélectionner
L-1->L

Cela provoque l'erreur au moment où le serpent mange sa première pomme car il voit sa longueur passer de 1 à 0... et 0 pour la dimension d'une liste, ça ne passe pas !

D'ailleurs, en général, on fait commencer les Snake avec un serpent de longueur 3 ou 4... mais ce n'est pas bien grave.

Enfin, pour ta question des murs, il suffit d'enregistrer leur position dans des listes et de faire des tests de collision, en regardant si la tête est dans le mur où non, exactement comme lorsque tu testes si le serpent se mord lui-même.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5670
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Erreur programmation Snake

Message non lude Hayleia » 11 Oct 2013, 05:43

Bisam a écrit:Enfin, pour ta question des murs, il suffit d'enregistrer leur position dans des listes et de faire des tests de collision, en regardant si la tête est dans le mur où non, exactement comme lorsque tu testes si le serpent se mord lui-même.

Ou encore plus simple : une fois que les murs sont dessinés à l'écran on peut savoir si la tête du serpent touche un mur lorsqu'un pixel est allumé là où la tête du serpent se trouve, donc en utilisant un pxl-Test. Il faut juste penser à tester l'existence du mur avant de dessiner la tête, sinon on perd à tous les coups.

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
Avatar de l’utilisateur
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 43.8%
 
Messages: 2509
Images: 2
Inscription: 30 Aoû 2011, 08:22
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Templar

Re: Erreur programmation Snake

Message non lude Adriweb » 11 Oct 2013, 07:12

Hayleia a écrit:
Bisam a écrit:Enfin, pour ta question des murs, il suffit d'enregistrer leur position dans des listes et de faire des tests de collision, en regardant si la tête est dans le mur où non, exactement comme lorsque tu testes si le serpent se mord lui-même.

Ou encore plus simple : une fois que les murs sont dessinés à l'écran on peut savoir si la tête du serpent touche un mur lorsqu'un pixel est allumé là où la tête du serpent se trouve, donc en utilisant un pxl-Test. Il faut juste penser à tester l'existence du mur avant de dessiner la tête, sinon on perd à tous les coups.

Aussi, vérifier si c'est bien un mur et pas une pomme. Donc un test des coordonées... serait plus simple ?

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 79.9%
 
Messages: 14840
Images: 1133
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Erreur programmation Snake

Message non lude pvdu09 » 11 Oct 2013, 18:50

merci pour l'erreur du L+1 gars :)
l'erreur selon ma calculette l'erreur serait a la ligne Pxl-Off(L²(P)L1(P

si vous aviez la soluce ce serait trop sympa :)
Avatar de l’utilisateur
pvdu09
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Prochain niv.: 13.3%
 
Messages: 4
Inscription: 10 Oct 2013, 21:12
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: 2nde

Re: Erreur programmation Snake

Message non lude critor » 11 Oct 2013, 18:56

pvdu09 a écrit:l'erreur selon ma calculette l'erreur serait a la ligne Pxl-Off(L²(P)L1(P


Qui se corrige probablement en Pxl-Off(L2(P),L1(P
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 53.5%
 
Messages: 42398
Images: 17115
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Erreur programmation Snake

Message non lude pvdu09 » 11 Oct 2013, 19:21

Et maintenant c'est une erreur DOMAIN à la ligne Repeat pxl-test(Y,X) and not(X=I and Y=J
excusez de vous embetez ^^
Avatar de l’utilisateur
pvdu09
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Prochain niv.: 13.3%
 
Messages: 4
Inscription: 10 Oct 2013, 21:12
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: 2nde

Re: Erreur programmation Snake

Message non lude critor » 11 Oct 2013, 19:34

Pxl-Test renvoie une erreur domaine si le point que tu veux tester est en dehors de l'écran.

Y doit donc être une valeur entière entre 0 et 62, et X entre 0 et 94.
Visiblement, l'un des deux paramètres a dû réussir à sortir de ces marges à cause d'une erreur ailleurs...
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 53.5%
 
Messages: 42398
Images: 17115
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Erreur programmation Snake

Message non lude pvdu09 » 11 Oct 2013, 20:05

j'ai pas compris ou le corriger dans le code tu peux préciser un peu steup?:)
Avatar de l’utilisateur
pvdu09
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Prochain niv.: 13.3%
 
Messages: 4
Inscription: 10 Oct 2013, 21:12
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: 2nde

Suivante

Retourner vers Problèmes divers / Aide débutants

Qui est en ligne

Utilisateurs parcourant ce forum: ClaudeBot [spider] et 15 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2543 utilisateurs:
>2491 invités
>44 membres
>8 robots
Record simultané (sur 6 mois):
7582 utilisateurs (le 25/06/2025)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)