| keyboard game |
| Auteur |
Message |
clem494949
Autorisation : Membre
Nb de messages : 37
Inscrit le : Dim 08 Sep 2013, 15:30
|
Posté le : Jeu 03 Oct 2013, 19:42
|
|
|
RE
G pas trouvé un nom très adapté pour ce programme qui demande d'appuyer sur les touches demandés le plus rapidement possible :
| Code | 1100->P
Repeat S<11
P-100->P
0->S
0->D
Pause "niv sup
Repeat E =/= G ou D>P
entaleat(1,9->G
Disp G
Repeat E =/= 0
codetouche->E
End
If E>91 et E<95
E-91->E
If E>81 et E<85
E-78->E
If E>71 et E<75
E-65->E
S+1->S
End
End
Disp "Game Over
|
A+
---------------------- testeur de touche rapidement :
While 1
codetouche->A
If A=/=0
disp A
End |
 |
|
| |
m@thieu41
Autorisation : Membre
Nb de messages : 848
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Jeu 03 Oct 2013, 20:12
|
|
|
Bonjour,
ton code ne tiens pas compte du temps de réaction, je crois que tu as du oublier de rentrer une ligne de code...
| Code | 1100->P
Repeat S<11 //A quoi set cette boucle exactement? on a droit à faire des erreurs tant qu'on a pas dépassé un certain temps?
P-100->P
EffVar SEffVar DPause "NIV SUP //EffVar X = 0->X
Repeat E!=G ou D>P //Pourquoi tester D>P si D ne change jamais?
entaleat(1,9->G
Disp Rép
Repeat Rép //Renvoi 1 si Rép!=0, et renvoi 0 si Rép=0
codetouche
End
//La partie qui suit:
Rép->E
If E>91 et E<95
E-91->E
If E>81 et E<85
E-78->E
If E>71 et E<75
E-65->E
//Peut devenir (en utilisant les booléens):
Rép-91(Rép>91 et Rép<95)-78(Rép>81 et Rép<85)-65(Rép>71 et Rép<75->E //Je réfléchi à un calcul plus adapté je poste ça rapidement
S+1->S
End
End |
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne  |
 |
|
| |
linkakro
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Ven 04 Oct 2013, 0:06
|
|
|
On n'a pas besoin de ne gérer que les touches des chiffres tant qu'il n'y a pas de confusion. Ici l'intégralité des colonnes 2,3,4 génèrent des nombres, mais seuls les chiffres seront cohérents à G.
Je calcule la dizaine et l'unité du code de touche pour calculer une identité à la touche.
| Code | 10partDéc(E.1
If Rép>1 et Rép<5
Rép-1+3*(9-ent(E.1->E //Rép+26-3ent(E.1->E |
---------------------- 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 |
 |
|
| |
Google_AdSense
|
Publicité
|
|
|
|
| |
clem494949
Autorisation : Membre
Nb de messages : 37
Inscrit le : Dim 08 Sep 2013, 15:30
|
Posté le : Sam 05 Oct 2013, 8:48
|
|
|
Re
J'avais effectivement oublié une ligne et peux tu mieu expliquer t'as solution qui m'enlève 10 octès d'un coup d'un seul : j'ai un peu de mal à comprendre.
le code:
| Code |
1100->P
Repeat S<10
P-100->P
EffVar S
EffVar D
Disp "niv
Pause 11-P/100
Repeat E!=G ou D>P
entaléat(1,9->G
Disp rep
REPEAT E
D+1->D
codetouche->E
End
10partDec(E.1
If Rep>1 et Rep<5
Rep-1+3*(9-ent(E.1-E
S+1->S
End
Disp "SCORE: ",S
END
DISP "GAME OVER
|
alors il y a des chances qu'il y ai de nouvelles fautes mais bon...
A+
---------------------- testeur de touche rapidement :
While 1
codetouche->A
If A=/=0
disp A
End |
 |
|
| |
m@thieu41
Autorisation : Membre
Nb de messages : 848
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Sam 05 Oct 2013, 10:05
|
|
|
Petite remarque:
si on met trop de temps et que le score est supérieur à 10, on a game over, donc on ne peut monter des niveaux que si le score est inférieur à 10, c'est normal?
-------------
Tu peux enchainer les DelVar sur la même ligne, comme ceci (ce sont des tokens de 2o qui supportent ce genre de choses):
| Code | | EffVar SEffVar DDisp "niv |
------------
| Code | 10partDec(E.1
If Rep>1 et Rep<5
Rep-1+3*(9-ent(E.1-E |
Première ligne:
On récupère l'unité du code touche (si on tape sur 7, le code touche est 72,
E.1 = 7.2
partDec(E.1 = .2
10partDéc(E.1 = 2
Deuxième ligne:
On teste si on appuyé sur une touche de la bonne colonne (unité entre 2 et 4 compris)
Troisième ligne:
On retrouve par le calcul le chiffre saisi, grâce à l'unité du code touche et à sa dizaine.
(Toujours pour l'exemple de 72):
Rep-1 = 2-1 = 1
E.1 = 7.2
ent(E.1 = 7
9-ent(E.1 = 9-7 = 2
3(9-ent(E.1 = 6
Rép-1+3(9-ent(E.1 = 1+6 = 7
donc
Rep-1+3*(9-ent(E.1->E stocke bien le bon nombre dans E (met bien la flèche du sto)
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne  |
 |
|
| |
Google_AdSense
|
Publicité
|
|
|
|
| |
clem494949
Autorisation : Membre
Nb de messages : 37
Inscrit le : Dim 08 Sep 2013, 15:30
|
Posté le : Sam 05 Oct 2013, 16:40
|
|
|
RE
| Citer : m@thieu41 | Petite remarque:
si on met trop de temps et que le score est supérieur à 10, on a game over, donc on ne peut monter des niveaux que si le score est inférieur à 10, c'est normal?
|
Oui le but du jeu est en fait de taper le plus lentement possible
non sérieux comme je l'ai dit j'ai surement fais des fautes donc le code devient:
| Code | 1100->P
Repeat S>10 <- c'est là que tous change !!!!!
P-100->P
EffVar SEffVar DDisp "niv (merci pour l'astuce)
Pause 11-P/100
Repeat E!=G ou D>P
entaléat(1,9->G
Disp rep
REPEAT E
D+1->D
codetouche->E
End
10partDec(E.1
If Rep>1 et Rep<5
Rep-1+3*(9-ent(E.1->E edit ok merci :)
S+1->S
End
Disp "SCORE: ",S
END
DISP "GAME OVER |
Je pense qu'on ne peut pas mieux.(Y a toujours mieux mais c'est déjà pas mal)
A+
---------------------- testeur de touche rapidement :
While 1
codetouche->A
If A=/=0
disp A
End |
 |
|
| |
linkakro
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Lun 07 Oct 2013, 0:15
|
|
|
La flèche sto "->E" est mal saisie dans vos trois messages suivant le mien à propos du calcul des touches.
---------------------- 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 |
 |
|
| |