Poster un nouveau sujet Poster une réponse
Problème de rebonds...
Auteur Message
Métalocif



Autorisation : Membre
Nb de messages : 92
Inscrit le : Lun 10 Mai 2010, 19:24
Posté le : Mar 08 Jui 2010, 18:14   Citer 

Voila... Un programme nommé AVOIDIT où il faut esquiver une boule qui rebondit sur l'écran.Le bonhomme se déplace bien mais si je demande à la boule de rebondir: ERR:DOMAIN
Voila le code:

Code
ClrDraw
AxesOff
GridOff
0->Xmin
94->Xmax
0->Xmin
62->Ymax
20->X
36->Y
46->C
50->D
1->A
1->B
0->S
Lbl 0
If X<93
Then
X+2->X
Goto 1
End
If X>1
Then
X-2->X
Goto 1
End
Lbl 1
If Y<61
Then
Y+2->Y
Goto 2
End
If Y>1
Then
Y-2->Y
Goto 2
End
Lbl 2
Text(X,Y,"°
Text(C,D,"¤
Text(c+6,D,"X
getkey->G




Déplacements du perso


Goto 0


Voilou... Posez des questions en cas de besoin.
Métalocif

----------------------
&quot;On ne ment jamais autant qu'avant les élections, pendant la guerre et après la chasse.&quot; Clémenceau
 Adresse email Haut de page Bas de page 
 
Ryuu



Autorisation : Membre
Nb de messages : 58
Inscrit le : Mer 07 Oct 2009, 20:44
Posté le : Mar 08 Jui 2010, 18:28   Citer 

Je pense qu'il faut faire comme ça :

Code
0->C:-1->B
While C=0
entAléat(-1,1->Z
End
If X=94 ou X=1
-B->B
If Y=62 ou Y=1
-C->C
Y+C->Y:X+B->X



Pas la peine de mettre des "Then", "End", "Goto", "Lbl".

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mar 08 Jui 2010, 18:30   Citer 

Essaye de cette façon: même si ton problème n'est pas résolu (d'ailleur je ne vois pas pourquoi), tu aura un programme plus rapide et plus court.


Code
ClrDraw
AxesOff
GridOff
0->Xmin
94->Xmax
0->Xmin
62->Ymax
20->X
36->Y
46->C
50->D
1->A
1->B
0->S
Lbl 0
If X<93
X+2->X
If X>1
X-2->X
If Y<61
Y+2->Y
If Y>1
Y-2->Y
Text(X,Y,"°
Text(C,D,"¤
Text(C+6,D,"X
getkey->G




Déplacements du perso


Goto 0



Sangohan38

 Adresse email Haut de page Bas de page 
 
alexvire



Autorisation : Membre
Nb de messages : 241
Inscrit le : Dim 10 Mai 2009, 13:31
Posté le : Mar 08 Jui 2010, 18:33   Citer 

Tu n'as qu'à utiliser deux autres variables, comme cet exemple sur le tableur:


Code
8{->}X
4{->}Y
1{->}A
1{->}B
While 1
X+A{->}X
Y+B{->}Y
Output(Y-B,X-A,"
If X<2 ou X>15
{-}A{->}A
If Y<2 ou Y>7
{-}B{->}B
Output(Y,X,"°
69!
End



----------------------
Salut, visitez mon site:

Et mon forum !

Mes programmes.
Convertissez vos images en un programme à mettre sur votre TI.
 Adresse email Haut de page Bas de page 
 
Métalocif



Autorisation : Membre
Nb de messages : 92
Inscrit le : Lun 10 Mai 2010, 19:24
Posté le : Mer 09 Jui 2010, 12:39   Citer 

Merci pour toutes ces réponses!

J'ai décidé de le faire à l'écran normal; je le mettrai au graphique à l'occasion.

Autre chose qui n'a rien à voir:y' a t-il moyen d'obtenir un rand avec des probas pondérées, du genre 1/5 d'avoir 1, 2/5 d'avoir 2 et 2/5 d'avoir 3?

----------------------
&quot;On ne ment jamais autant qu'avant les élections, pendant la guerre et après la chasse.&quot; Clémenceau
 Adresse email Haut de page Bas de page 
 
alexvire



Autorisation : Membre
Nb de messages : 241
Inscrit le : Dim 10 Mai 2009, 13:31
Posté le : Mer 09 Jui 2010, 14:57   Citer 

Oui, tu mets:

Code
NbrAléat{->}A
If A<.2
1{->}B
If A{>=}.2 et A<.6
2{->}B
If A {>=}.6 et A<1
3{->}B



----------------------
Salut, visitez mon site:

Et mon forum !

Mes programmes.
Convertissez vos images en un programme à mettre sur votre TI.
 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 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink