Poster un nouveau sujet Poster une réponse
jeu de reflexes avec toutes les touches
Auteur Message
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Lun 13 Jui 2011, 21:34   Citer 

Ce jeu existe peut être déja mais je n'ai pas regardé toutes les pages alors voici le mien. le but est d'appuyer le plus vite possible sur les touches qui apparaissent. TOUTES LES TOUCHES PEUVENT APPARAITRE Y COMPRIS F(X) GRAPHE ETC DONC NE VOUS LAISSEZ PAS SURPRENDRE!!! sinon il y a un systeme de vies et de difficulté. Voila tout est dit je pense bigmouth.gif



Code

0->H
effecr
output(3,1,"+**+*++**++*+**+
output(4,6,"REFLEX
output(6,1,"+**+*++**++*+**+
for([theta],1,500
end
output(5,1," ETES VOUS GEEK?
pause
effecr
lbl [theta]
menu("** difficulté **","noob",A,"2+3=4",B,"pi=3,14",C,"GEEK","INSTRUCTIONS",E
end
lbl A:80->M:20->G:goto 1
lbl B:60->M:15->G:goto 1
lbl C:40->M:10->G:goto 1
lbl D:15->M:5->G:goto 1
lbl E
output(2,1,"C'EST PAS DUR!  APPUIE SUR LES  TOUCHES QUI     CORRESPONDENT   LE PLUS VITE    POSSIBLE!
pause
goto 0
end
lbl 1
10entaleat(1,10)+entaleat1,6->x
if X=16 ou X=35 ou X=36 ou X=46 ou X=56 ou X=66 ou X=76 ou X=86 ou X=96 ou X=106
goto 1
effecr
lbl 2
if X= 11
output(2,2,"F(X)
if X= 12
output(2,2,"fenetre
if X= 13
output(2,2,"zoom
if X= 14
output(2,2,"trace
if X= 15
output(2,2,"graphe
if X= 21
output(2,2,"2nde
if X= 22
output(2,2,"mode
if X= 23
output(2,2,"suppr
if X= 24
output(2,2,"fleche gauche
if X= 25
output(2,2,"fleche haut
if X= 26
output(2,2,"fleche droite
if X= 31
output(2,2,"alpha
if X= 32
output(2,2,"x,t,[theta],n
if X= 33
output(2,2,"stats
if X= 34
output(2,2,"fleche bas
if X= 41
output(2,2,"maths
if X= 42
output(2,2,"matrice
if X= 43
output(2,2,"prgm
if X= 44
output(2,2,"var
if X= 45
output(2,2,"annul
if X= 51
output(2,2,"x^-1
if X= 52
output(2,2,"sin
if X= 53
output(2,2,"cos
if X= 54
output(2,2,"tan
if X= 55
output(2,2,"^
if X= 61
output(2,2,"x²
if X= 62
output(2,2,",
if X= 63
output(2,2,"(
if X= 64
output(2,2,")
if X= 65
output(2,2,"^
if X= 71
output(2,2,"log
if X= 72
output(2,2,"7
if X= 73
output(2,2,"8
if X= 74
output(2,2,"9
if X= 75
output(2,2,"*
if X= 81
output(2,2,"ln
if X= 82
output(2,2,"4
if X= 83
output(2,2,"5
if X= 84
output(2,2,"6
if X= 85
output(2,2,"-
if X= 91
output(2,2,"sto->
if X=92
output(2,2,"1
if X= 93
output(2,2,"2
if X= 94
output(2,2,"3
if X= 95
output(2,2,"+
if X= 102
output(2,2,"0
if X= 103
output(2,2,".
if X= 104
output(2,2,"(-)
if X= 105
output(2,2,"entrer
while K (different de)X
codetouche->k
if K (different de)X et K(different de)0:then:output(5,1,"perdu!:G-1->G:end

H-1->H
output(8,1,H
output(8,8,"points
output(7,1,G
output(7,8,"vies
if G=0:then:output(5,6,"perdu!:stop:end
end
H+M->H
output(8,1," [5 espaces]
output(8,1,H
output(8,1,"points
0->K
goto1



je suis évidemment ouvert à toute proposition cupsmiley.gif cupsmiley.gif cupsmiley.gif cupsmiley.gif cupsmiley.gif cupsmiley.gif

PS: pour les feignants (et je les comprend parfaitement!!) qui ne voudraient pas prendre une heure pour copier tous les if, il suffit de faire "2nde" "+" "3"
de valider puis de taper "if X=". Vous validez et ça met "err invalide" mais c'est pas grave. Vous faites "quitter", vous allez dans edit, vous ouvrez le programme reflex, et vous avez qu'à faire "2nde" "entrer" plein de fois en validant une fois sur deux. c'est une sorte de copier-coller. vous le refaites avec "output(2,2," " et ça vous fera gagner au moins 10 min de copie bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Cyplejet
Invité
Posté le : Mar 14 Jui 2011, 8:34   Citer 

Ce ne serait pas plus court d'afficher le numéro de la touche plutôt? le programme serait moins lourd même si on perd en compréhension du jeu.

Puis aussi, ta "lbl 1" on peut aussi faire ça:


Code
10entaleat(1,10)+entaleat1,5->x
If x=35
26->x


La probabilité reste donc la même, et c'est plus léger et plus rapide.

  Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 8:44   Citer 

Pas bête du tout le coup du x=35! C'est vrai que comme on a une touche en plus sur la deuxième ligne et une en moins sur la troisième, ça marche. Merci beaucoup.
En ce qui concerne le numéro de la touche c'est vrai que ça allège considérablement le programme mais c'est beaucoup plus dur et moins instinctif crazy.gif crazy.gif crazy.gif De plus le programme est deja suffisamment rapide. Il n'y a pas de "temps mort".

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 14 Jui 2011, 8:53   Citer 

Tu as oublié de vérifier dans ta série de tests presue au début (pour vériffier que le nombre aléatoire soit correct) de prendre en compte que [On] (101) est invalide.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 10:39   Citer 

Ah oui exact. bah un petit "if x=35 ou x=101:26->x" ça change un petit peu les probas mais si peu que ça ne gêne pas clown.gif clown.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Tigre-obscure



Autorisation : Membre
Nb de messages : 131
Inscrit le : Mar 24 Mai 2011, 21:39
Posté le : Mar 14 Jui 2011, 12:44   Citer 

Il est cool ce petit jeux de réflexion =) je le copie ce soir :p Enfin j'espère avoir le temps cry.gif

----------------------
Posté par Tigre-
Love Programme winkle.gif,Love jeux winkle.gif,Love S....,Love intelligence.
Un peu d'aide? (à propos de la calculette winkle.gif)
LISTE DES JEUX SUR LE FORUM
Liste des caractère ù,ü,ect... Clique ici
Lien pour télécharger un catalogue de touche Ti basic
Lien pour traduire un programme et le tapez à la calculatrice happy.gif

Tigre =)
 Adresse email Haut de page Bas de page 
 
coc5
Avatar

Autorisation : Membre
Nb de messages : 879
Inscrit le : Sam 16 Jui 2007, 13:37
Posté le : Mar 14 Jui 2011, 13:07   Citer 

Simple et efficace.

Cependant, je pense que tu aurais pu gagner du temps en définissant une Str (chaîne de caractère) comme suit : "F(crazy.gif fenetre zoom trace graphe 2nde mode suppr [...]" et ainsi de suite, laissant 10 caractères par signe.
Tu aurais juste eu à couper dedans via sub(Str, /division de X pour faire correspondre au découpage/, 10).
Certes tu perds momentanément de la mémoire (pas tellement en fait), mais tu raccourcis d'autant l'espace pris par le programme lui-même et c'est plus facile à entretenir.

Enfin, c'était une astuce pour un futur programme évidemment, laisse ton jeu comme il est, ça convient déjà très bien.

 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 15:04   Citer 

Je vais y réfléchir. Il y a pas de limite de taille pour les chaines? parce que ça va être vachement long. Si on met 10 caractères par touche ça fait en tout 500 caractères!!!!! Et une chaine aussi longue prend forcément beaucoup de place non?

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 15:41   Citer 

Reflexion finie godgrace.gif godgrace.gif godgrace.gif
on peut faire une chaine de plus de 500 caractères et ça prend 1 octet par caractère. Vu tous les if qu'on enlève ça revient à gagner de la place au final. Le seul problème c'est qu'il faudrait associer la valeur de x à une autre qui serait le départ de la coupe de la "souschaine". J'ai pensé à une liste mais la ça prendrait trop de mémoire associé à la chaine et au programme.
Pas insurmontable comme problème, mais cette solution améliorerait juste (peut être) un peu la vitesse, et comme je l'ai déjâ dit, le programme est fluide malgré les nombreux "if".
La seule optimisation possible de mon point de vue serait : au lieu de mettre output(2,2, à chaque if, on pourrait stocker le nom de la touche dans une chaine et mettre juste un output à la fin. je pense qu'on gagnerait de la place. Je me dépêche de vérifier ça et de mettre le nouveau programme.

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 15:49   Citer 

Voila le prog. ça allège beaucoup en effet.

Code

0->H
effecr
output(3,1,"+**+*++**++*+**+
output(4,6,"REFLEX
output(6,1,"+**+*++**++*+**+
for([theta],1,500
end
output(5,1," ETES VOUS GEEK?
pause
effecr
lbl [theta]
menu("** difficulté **","noob",A,"2+3=4",B,"pi=3,14",C,"GEEK","INSTRUCTIONS",E
end
lbl A:80->M:20->G:goto 1
lbl B:60->M:15->G:goto 1
lbl C:40->M:10->G:goto 1
lbl D:15->M:5->G:goto 1
lbl E
output(2,1,"C'EST PAS DUR!  APPUIE SUR LES  TOUCHES QUI     CORRESPONDENT   LE PLUS VITE    POSSIBLE!
pause
goto 0
end
lbl 1
10entaleat(1,10)+entaleat1,5->X
if X=35 ou X=101
26->X
goto 1
effecr
lbl 2
if X= 11
"F(X)->chaine1
if X= 12
"fenetre->chaine1
if X= 13
"zoom->chaine1
if X= 14
"trace->chaine1
if X= 15
"graphe->chaine1
if X= 21
"2nde->chaine1
if X= 22
"mode->chaine1
if X= 23
"suppr->chaine1
if X= 24
"fleche gauche->chaine1
if X= 25
"fleche haut->chaine1
if X= 26
"fleche droite->chaine1
if X= 31
"alpha->chaine1
if X= 32
"x,t,[theta],n->chaine1
if X= 33
"stats->chaine1
if X= 34
"fleche bas->chaine1
if X= 41
"maths->chaine1
if X= 42
"matrice->chaine1
if X= 43
"prgm->chaine1
if X= 44
"var->chaine1
if X= 45
"annul->chaine1
if X= 51
"x^-1->chaine1
if X= 52
"sin->chaine1
if X= 53
"cos->chaine1
if X= 54
"tan->chaine1
if X= 55
"^->chaine1
if X= 61
"x²->chaine1
if X= 62
",->chaine1
if X= 63
"(->chaine1
if X= 64
")->chaine1
if X= 65
"^->chaine1
if X= 71
"log->chaine1
if X= 72
"7->chaine1
if X= 73
"8->chaine1
if X= 74
"9->chaine1
if X= 75
"*->chaine1
if X= 81
"ln->chaine1
if X= 82
"4->chaine1
if X= 83
"5->chaine1
if X= 84
"6->chaine1
if X= 85
"-->chaine1
if X= 91
"sto->->chaine1
if X=92
"1->chaine1
if X= 93
"2->chaine1
if X= 94
"3->chaine1
if X= 95
"+->chaine1
if X= 102
"0->chaine1
if X= 103
".->chaine1
if X= 104
"(-)->chaine1
if X= 105
"enter->chaine1
output(2,2,chaine1
while K (different de)X
codetouche->k
if K (different de)X et K(different de)0:then:output(5,1,"perdu!:G-1->G:end
H-1->H
output(8,1,H
output(8,8,"points
output(7,1,G
output(7,8,"vies
if G=0:then:output(5,6,"perdu!:stop:end
end
H+M->H
output(8,1," [5 espaces]
output(8,1,H
output(8,1,"points
0->K
goto1



----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 14 Jui 2011, 17:47   Citer 

Pas mal ! bigmouth.gif
Je n'avais pas donné suite à cette idée quand elle est passée... Et c'est toi qui l'a fait. happy.gif

Concernant la suggestion de la sous-chaîne : on aurait gagné du code mais perdu de la vitesse. Les sous-chaînes sont terriblement lentes quand on manipule une très longue chaîne.

----------------------
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 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 18:25   Citer 

Me voila rassuré godgrace.gif cupsmiley.gif godgrace.gif cupsmiley.gif godgrace.gif cupsmiley.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 14 Jui 2011, 20:35   Citer 

Sinon essaie en suprimant tous les "-> Chaîne1" et en rempalçant "output(2,2,chaine1" par "output(2,2,Rép" ou "output(2,2,Ans" si ta TI est en anglais.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mar 14 Jui 2011, 21:13   Citer 

Ok,bien vu.ça fait gagner 148 octets!!!!!!!!!!!!!!!
Qui dit mieux??? godgrace.gif godgrace.gif godgrace.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 14 Jui 2011, 21:22   Citer 

Suprime en plus le "[différend de]0" de la longue ligne presue à la fin, ça fait encore 2 octés de plus d'économisés.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Tigre-obscure



Autorisation : Membre
Nb de messages : 131
Inscrit le : Mar 24 Mai 2011, 21:39
Posté le : Mar 14 Jui 2011, 22:42   Citer 

Je voudrai savoir si j'ai faux ou bon car j'ai vu une erreur a la ligne du menu(

Code
menu("** difficulté **","noob",A,"2+3=4",B,"pi=3,14",C,"GEEK","INSTRUCTIONS",E


Il manque pas le D du GEEK ^^"
si c'est bon c'est donc

Code
menu("** difficulté **","noob",A,"2+3=4",B,"pi=3,14",C,"GEEK",D,"INSTRUCTIONS",E



----------------------
Posté par Tigre-
Love Programme winkle.gif,Love jeux winkle.gif,Love S....,Love intelligence.
Un peu d'aide? (à propos de la calculette winkle.gif)
LISTE DES JEUX SUR LE FORUM
Liste des caractère ù,ü,ect... Clique ici
Lien pour télécharger un catalogue de touche Ti basic
Lien pour traduire un programme et le tapez à la calculatrice happy.gif

Tigre =)
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 8:48   Citer 

C'est vrai que j'aurais pu me relire goutte.gif goutte.gif il manquait effectivement le D
Pour toi Sandro. le [different de 0] sert à ne pas perdre de vie en continu. On donne K=0 par défaut, ce qui ne correspond à aucune touche, comme ça on ne perd pas 5 vies par seconde!! J'ai essayé et c'est ce que ça me donne donc tant pis pour les 2 octets godgrace.gif godgrace.gif godgrace.gif godgrace.gif


DONC voila la version finale du jeu pour ceux que ça intéresse, pour un total de 1132 octets. Il est à noter qu'on a gagné 308 octets par rapport à la première version bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif bigmouth.gif


Code

0->H
effecr
output(3,1,"+**+*++**++*+**+
output(4,6,"REFLEX
output(6,1,"+**+*++**++*+**+
for([theta],1,500
end
output(5,1," ETES VOUS GEEK?
pause
effecr
lbl [theta]
menu("** difficulté **","noob",A,"2+3=4",B,"pi=3,14",C,"GEEK",D,"INSTRUCTIONS",E
lbl A:80->M:20->G:goto 1
lbl B:60->M:15->G:goto 1
lbl C:40->M:10->G:goto 1
lbl D:15->M:5->G:goto 1
lbl E
output(2,1,"C'EST PAS DUR!  APPUIE SUR LES  TOUCHES QUI     CORRESPONDENT   LE PLUS VITE    POSSIBLE!
pause
goto [theta]
end
lbl 1
10entaleat(1,10)+entaleat(1,5)->X
if X=35 ou X=101
26->X
effecr
lbl 2
if X= 11
"F(X)
if X= 12
"fenetre
if X= 13
"zoom
if X= 14
"trace
if X= 15
"graphe
if X= 21
"2nde
if X= 22
"mode
if X= 23
"suppr
if X= 24
"fleche gauche
if X= 25
"fleche haut
if X= 26
"fleche droite
if X= 31
"alpha
if X= 32
"x,t,[theta],n
if X= 33
"stats
if X= 34
"fleche bas
if X= 41
"maths
if X= 42
"matrice
if X= 43
"prgm
if X= 44
"var
if X= 45
"annul
if X= 51
"x^-1
if X= 52
"sin
if X= 53
"cos
if X= 54
"tan
if X= 55
"^
if X= 61
"x²
if X= 62
",
if X= 63
"(
if X= 64
")
if X= 65
"^
if X= 71
"log
if X= 72
"7
if X= 73
"8
if X= 74
"9
if X= 75
"*
if X= 81
"ln
if X= 82
"4
if X= 83
"5
if X= 84
"6
if X= 85
"-
if X= 91
"sto->
if X=92
"1
if X= 93
"2
if X= 94
"3
if X= 95
"+
if X= 102
"0
if X= 103
".
if X= 104
"(-)
if X= 105
"entrer
output(2,2,rep
while K (different de)X
codetouche->k
if K (different de)X et K(different de)0:then:output(5,1,"perdu!:G-1->G:end
H-1->H
output(8,1," [5 espaces]
output(8,1,H
output(8,8,"points
output(7,1," [2 espaces]
output(7,1,G
output(7,8,"vies
if G=0:stop
end
H+M->H
output(8,1," [5 espaces]
output(8,1,H
output(8,1,"points
0->K
goto1



----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mer 15 Jui 2011, 9:37   Citer 

A quoi sert le "End" à la ligne sous le menu de difficulté (sauf si c'est sensé etre un choix du menu, mais dans ce cas il manque l'éttiquette)?
Où est le "Lbl 0" je ne le trouve pas alors que je trouve des "Goto 0" ?

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 11:31   Citer 

C'est modifié. le lbl0 était en fait lbl[theta]. Et le end était une erreur de recopiage aussi. Par contre maintenant ça met à la ligne après "difficulté" et j'arrive pas à l'enlever. c'est au bon format quand j'édite mais après c'est pas bon. cry.gif cry.gif cry.gif cry.gif cry.gif IL NE FAUT PAS REVENIR A LA LIGNE (ce message est pour ceux qui maitrisent mal les menus).

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 11:38   Citer 

Au fait j'ai battu mon record. L'ancien était 1427 avec la première version en mode "geek". Le nouveau est 2043 (toujours en mode "geek") alors que le score descend plus vite. Qui dit mieux? godgrace.gif godgrace.gif godgrace.gif godgrace.gif godgrace.gif godgrace.gif godgrace.gif
Au fait j'ai remodifié un peu le prog à la fin pour que ce soit plus propre à l'affichage. Sinon en mode noob, ça effaçait pas le zero du 10 pour les vies et ça mettait 90. bof

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mer 15 Jui 2011, 12:55   Citer 


Citer
Ok,bien vu.ça fait gagner 148 octets!!!!!!!!!!!!!!!
Qui dit mieux???



Moi! Au lieu de mettre des if pour les chiffres de 1 à 9, on peut faire un calcul qui affiche le résultat moyennant quelques conditions que je stock dans des variables afin d'alléger la mémoire:


Code
.1K->L
10fpart(L->M
If L[>=]7 and L[<=]10 and M>1 and M<5
Disp 8-3int(L-6)+M



Malheureusement, avec cette méthode, j'obtient -2 quand j'appuie sur 0.

Sangohan38

 Adresse email Haut de page Bas de page 
 
coc5
Avatar

Autorisation : Membre
Nb de messages : 879
Inscrit le : Sam 16 Jui 2007, 13:37
Posté le : Mer 15 Jui 2011, 12:58   Citer 

Qui dis mieux ? Moi~

Tu peux condenser la partie sous le menu :


Code

lbl [theta]
80->M:20->G
menu("** difficulté **","noob",1,"2+3=4",B,"pi=3,14",C,"GEEK",D,"INSTRUCTIONS",E
lbl E
Disp "C'EST PAS DUR!","APPUIE SUR LES","TOUCHES QUI","CORRESPONDENT","LE PLUS VITE"
pause "POSSIBLE!
goto [theta]
end
lbl B:60->M:15->G:goto 1
lbl C:40->M:10->G:goto 1
lbl D:15->M:5->G
lbl 1
10entaleat(1,10)
Rep + entaleat(1+(Rep>99),5+(Rep=20)-(Rep=30))->X
effecr



Les modifications :


* Les variables M et G sont initialisées pour le niveau "noob" avant le menu, ainsi on passe directement à lbl 1 si ce choix est prit, les paramêtrages des autres niveaux restent intouchés.

* On fait passer les lbl de paramétrage de M et G (pour les niveaux) juste avant le lbl 1, comme ça on épargne un Goto 1 devenu ainsi inutile ("Goto1:Lbl1" à la suite)

* Les instructions sont données pas un Disp plutôt qu'un Output et tout plein d'espaces entre les mots. Également à noter le gain d'un octet par l'utilisation de Pause et sa possibilité d'afficher une chaîne de caractère

* Suppression du "If X=35 ou X=101 : 26->Xen évitant ainsi ta méthode pas très rigoureuse qui donnait deux fois plus de chance que le reste de tomber sur la flèche de droite. Note que la formule de l'aléatoire a été modifiée : Par exemple (Rep=20) renvoie 1 si on est sur la zone des flèches, 0 sinon, ça permet de couvrir comme il faut les exceptions 101, 35 et 26.



J'espère que tu auras saisie l'intérêt de ces améliorations.

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 14:14   Citer 

Pas mal tout ça mais ça prend plus de place. On reprend 18 octets.
Mais bon t'as raison c'est plus rigoureux au niveau des probas. Comme ça y'a plus rien à reprocher de ce coté. Et une ligne de calcul avec plein de entaleat ça fait toujours plus classe glasses.gif glasses.gif glasses.gif (même si c'est pas forcément ce qu'on cherche quand on fait des progs)

Et merci du tuyau pour le pause"possible! j'aurais jamais deviné que cette fonction pouvait afficher du texte ahh.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
coc5
Avatar

Autorisation : Membre
Nb de messages : 879
Inscrit le : Sam 16 Jui 2007, 13:37
Posté le : Mer 15 Jui 2011, 14:22   Citer 

Hmm, plus de place ? Étrange. Mais c'est uniquement la correction de probabilité qui fait ça, le reste diminue la taille prise par le programme.

Tu es certain qu'avec les 4 modifications la place est tout de même plus importante ? Ça me parait très étrange (surtout que même pour l'aléatoire, on supprime le If etc tout de même)

 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 15:11   Citer 

Non c'est bon ça allège en fin de compte. C'est parceque j'avais mis une modif sur le forum et pas sur ma calto, ce qui faisait que le prog était plus lourd. Ca fait 1149 octets au final. pas mal pour un programme qui doit afficher n'importe quelle touche godgrace.gif merci à tous!!!!

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Tigre-obscure



Autorisation : Membre
Nb de messages : 131
Inscrit le : Mar 24 Mai 2011, 21:39
Posté le : Mer 15 Jui 2011, 16:06   Citer 

Maintenant tu peux l'édite la version final *Ou pas* qui prend 1149 Octets?
Comme ça je recopie happy.gif

----------------------
Posté par Tigre-
Love Programme winkle.gif,Love jeux winkle.gif,Love S....,Love intelligence.
Un peu d'aide? (à propos de la calculette winkle.gif)
LISTE DES JEUX SUR LE FORUM
Liste des caractère ù,ü,ect... Clique ici
Lien pour télécharger un catalogue de touche Ti basic
Lien pour traduire un programme et le tapez à la calculatrice happy.gif

Tigre =)
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mer 15 Jui 2011, 20:15   Citer 

Je vois que tu n'as pas pris en compte ma modification: trop lent à exécuter ou oublie?

Sangohan38

 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Mer 15 Jui 2011, 21:00   Citer 

C'est un oubli mais je vois pas comment l'insérer. Tu pourrais t'en charger? je supprimerai mon post avec tout le prog une fois que t'auras mis le tien ok?

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mer 15 Jui 2011, 21:22   Citer 


Code
0->H
effecr
output(3,1,"+**+*++**++*+**+
output(4,6,"REFLEX
output(6,1,"+**+*++**++*+**+
for([theta],1,500
end
output(5,1," ETES VOUS GEEK?
pause
effecr
lbl [theta]
80->M:20->G
menu("** difficulté **","noob",1,"2+3=4",B,"pi=3,14",C,"GEEK",D,"INSTRUCTIONS",E
lbl E
Disp "C'EST PAS DUR!","APPUIE SUR LES","TOUCHES QUI","CORRESPONDENT","LE PLUS VITE"
pause "POSSIBLE!
goto [theta]
end
lbl B:60->M:15->G:goto 1
lbl C:40->M:10->G:goto 1
lbl D:15->M:5->G
lbl 1
10entaleat(1,10)
Rep + entaleat(1+(Rep>99),5+(Rep=20)-(Rep=30))->X
effecr
if X= 11
"F(X)
if X= 12
"fenetre
if X= 13
"zoom
if X= 14
"trace
if X= 15
"graphe
if X= 21
"2nde
if X= 22
"mode
if X= 23
"suppr
if X= 24
"fleche gauche
if X= 25
"fleche haut
if X= 26
"fleche droite
if X= 31
"alpha
if X= 32
"x,t,[theta],n
if X= 33
"stats
if X= 34
"fleche bas
if X= 41
"maths
if X= 42
"matrice
if X= 43
"prgm
if X= 44
"var
if X= 45
"annul
if X= 51
"x^-1
if X= 52
"sin
if X= 53
"cos
if X= 54
"tan
if X= 55
"^
if X= 61
"x²
if X= 62
",
if X= 63
"(
if X= 64
")
if X= 65
"^
if X= 71
"log
if X= 75
"*
if X= 81
"ln
if X= 85
"-
if X= 91
"sto->
.1X->Y
10fpart(Y->Z
If Y[>=]7 and Y[<=]10 and Z>1 and Z<5
Output(1,1,8-3int(Y-6)+Z
if X= 95
"+
if X= 102
"0
if X= 103
".
if X= 104
"(-)
if X= 105
"entrer
output(2,2,rep
while K (different de)X
codetouche->K
if K (different de)X et K(different de)0:then:output(5,1,"perdu!:G-1->G:end
H-1->H
output(8,1," [5 espaces]
output(8,1,H
output(8,8,"points
output(7,1," [2 espaces]
output(7,1,G
output(7,8,"vies
if G=0:stop
end
H+M->H
output(8,1," [5 espaces]
output(8,1,H
output(8,1,"points
0->K
goto1



Ce code est valable si "1" par exemple est équivalent à Output(1,1,"1

Sangohan38

 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mer 15 Jui 2011, 21:24   Citer 

encore de quoi gagner 2 octés : remplace les 2 premières lignes par

Code
EffVar HEffEcr



et la 2nde et 3ème de la fin par

Code
EffVar Koutput(8,1,"points



Sandro

PS : le texte à afficher doit être en MAJUSCULES à moins que tu n'utilise les variables stats (le h par example n'y est même pas) (pour les touches à appuyer et la fin) ou que tu soit un traitre qui nous poste un programme pour 83+

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Jeu 16 Jui 2011, 13:27   Citer 

Non je ne suis pas un traitre ahh.gif je n'ai même pas la ti83, j'ai que la 82 stats.
Merci sangohan pour le post. Je supprime le mien comme promis vu que le tiens est plus "final" godgrace.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 16 Jui 2011, 16:41   Citer 

Sauf que la 82stat est une variante de la 83 godgrace.gif
Ne pas confondre 83 et 83+.

----------------------
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 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Jeu 16 Jui 2011, 19:25   Citer 

Oui bah le resultat est le même : je n'ai ni l'une ni l'autre. cupsmiley.gif cupsmiley.gif na

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 16 Jui 2011, 21:01   Citer 

Je parlais bien de TI83+, pas de TI83, car sauf erreur de ma part, les TI83+ ont les minuscules (du moins on peut les installer). De toute façon, je ne voie pas pourquoi une TI83 n'aurrait pas sa place ici à part le nom, vu que c'est entre TI82 et TI82stats.

Sandro

PS : désolé, je n'ai rien personnellement contre ceux qui ont des TI83+ ou plus et qui postent ici (sauf à la limite quand ils posent des questions qui n'on rien à faire avec les TI82(stats(.fr)) tel que les applications ou la mémoire flash. Et j'ai en particulier rien contre toi (tant plus il y a de membres actifs (et d'invités qui postent), tant plus le forum est actif et donc interrecent).

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Page générée en 6 requêtes