Poster un nouveau sujet Poster une réponse
Golf
Auteur Message
Lombe



Autorisation : Membre
Nb de messages : 3
Inscrit le : Mar 13 Mai 2014, 21:24
Posté le : Sam 20 Déc 2014, 16:17   Citer 

Bon voila le 1er programme que je poste.
Dans le cadre de mes TPE je me suis amusé a faire un petit programme qui simule la trajectoire d'une balle de golf.
Donc voila la 1er ébauche :


Code
:EffDessin:AxesNAff:EffEcr:Degré:0->Ymin:62->Ymax:9.81->G:0->C:0-S
:For(A,0,25
:Texte(A,40,"Golf
:End
:Pause
:0->Xmin
:entAléat(200,300->T
:arrondi(T+T/100*25,0)->Xmax
:Lbl 0
:S+1->S
:EffDessin
:Horizontale 0
:Ligne(T,15,T-15,12
:Ligne(T,9,T-15,12
:Ligne T,0,T,15
:Texte0,0,"<
:Texte(0,74,">
:Ligne(0,59,T,59
:Texte(0,79,T,"M
:17->théta:0->V
:Repeat K=105
:codeTpuche->K
:max(17,min(25,théta+(K=26)-(K=24)->théta
:Texte(7,35,"ANGLE:",théta
:End
:0->K:1->V:1->L
:Texte(7,10,"VITESSE (M.S-1):
:Repeat K=105
:codetouche->K
:Pxl-Change(15,V
:V+L->V
:If V=70 ou V=0:-L->L
:Texte(9,70,V,"M.S-1   "
:End
:(-.5G)/(V²cos(théta)²)->A
:tan(théta)->B
:0->C:B²-(4AC)->D
:(-B-racine carré(D))/(2A)->E
:(-B+racine carré(D))/(2A)->F
:For(X,F,E,(Xmax-Xmin)/92
:((-.5GX²)/(V²cos(théta)²))+Xtan(théta)+C->Y
:arrondi(62-Y,0)->Y
:arrondi(x/(Xmax-Xmin)*92,0->Z
:If Z=<94:Pxl-On(Y,Z
:End
:Texte(17,0,E
:Pause
:If arrondi(E,0)=T ou partEnt(E)=T:Goto 3
:Goto 0
:Lbl 3
:Disp "gagner,S




Il reste pas mal de chose a faire (notamment une fin plus jolis, faire de façon a reprendre la balle ou elle est tombé et si possible mettre du relief)
Donc amélioration et optimisation fortement possible minied.gif

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 20 Déc 2014, 18:47   Citer 

Cela semble correct.

Tu devrais utiliser le complément de la condition et goto 0 ou encore une boucle. Voici un exemple avec la boucle Repeat.
Code
Lbl 0
 // ...
:If arrondi(E,0)=T ou partEnt(E)=T:Goto 3
:Goto 0
:Lbl 3


Code
:Repeat arrondi(E,0)=T ou partEnt(E)=T
 // ...
:End

Je te conseille d'utiliser les fonctions de dessin de repère graphique et les courbes plutôt que les fonctions de pixels. Y1 est dans le menu Y-var, var+droite sur ti82stats et 2nde+var sur ti82.

Code
:"((-.5GX²)/(V²cos(théta)²))+Xtan(théta)+C->Y1
AffGraph


Code
:For(X,F,E,(Xmax-Xmin)/92
:((-.5GX²)/(V²cos(théta)²))+Xtan(théta)+C->Y
:Pt-On(X,Y
:arrondi(X/(Xmax-Xmin)*92,0->Z
:If Z=<94:Pxl-On(Y,Z
:End



----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
Lombe



Autorisation : Membre
Nb de messages : 3
Inscrit le : Mar 13 Mai 2014, 21:24
Posté le : Sam 20 Déc 2014, 18:59   Citer 

merci pour tes conseil.


Citer : linkakro
Je te conseille d'utiliser les fonctions de dessin de repère graphique et les courbes plutôt que les fonctions de pixels. Y1 est dans le menu Y-var, var+droite sur ti82stats et 2nde+var sur ti82.



J'avais utilisé cette méthode pour ma toute 1ere version mais quand on mettait une toute petite vitesse et un angle petit sa met longtemps avant de pouvoir continuer.

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 20 Déc 2014, 19:09   Citer 

Si tu traces une seule fonction je ne vois pas de raison que ce soit plus lent. La désactivation ou l'activation avec FonctOff et FonctOn. Si on ne mentionnes pas d'équation de courbe Y1 etc alors cela agit sur toutes.

Tandis que les points sont la même chose que tes pixels mais ne demandent aucun calcul supplémentaire.

Tu peux simplifier ton calcul de pourcentages.

Code
:arrondi(T+T/100*25,0)->Xmax
:arrondi(T*1.25,0)->Xmax



----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 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