(Jeu) Mémoriz (Jeu) |
Auteur |
Message |
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Lun 30 Juil 2012, 11:38
|
|
|
J'ai fait un jeu où le but est de mémoriser un nombre qui s'affiche et ensuite de le réécrire. Le score augmente à chaque bonne réponse et vous perdez quand vous mettez une mauvaise réponse.
Toutefois, le jeu n'est pas esthétique mais je ne pense pas qu'il faut l'améliorer de ce coté là
Voici le code:
Nom: Mémoriz
Taille: 368 octets
Auteur: S.L
-> : flèche sto
# : signe "différent de" (2nd+Math+2)
Fonctions en français:
Code | PROG:MEMORIZ
:EffEcr
:Menu("****MEMORIZ*****","JOUER",A,"INSTRUCTIONS",B,"CREDITS",C,"QUITTER",D
:Lbl D
:EffEcr
:Stop
:Lbl C
:Disp "GAME BY S.L","(C)2012
:Pause
:Return
:Lbl B
:Disp "MEMORIZ LE","NOMBRE QUI","APPARAIT ET","REECRIS-LE.
:Pause
:Return
:Lbl A
:0->S
:Output(4,6,"PRET?
:Pause
:EffEcr
:Lbl 1
:EffEcr
:entAléat(100000,999999)->A
:30->B
:Lbl 2
:Output(4,6,A
:B-1->B
:If B=0:Goto 3
:Goto 2
:Lbl 3
:EffEcr
:Input "NOMBRE?",C
:If C=A:Then:EffEcr:Disp "BIEN JOUE!
:S+1=S
:Pause
:Goto 1
:End
:If C#A:Then:EffEcr:Disp "ECHEC!","LE NOMBRE ETAIT:",A,"SCORE",S
|
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
 |
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Lun 30 Juil 2012, 12:45
|
|
|
Code |
:Lbl 1
:EffEcr
:entAléat(100000,999999)->A
:30->B
:Lbl 2
:Output(4,6,A
:B-1->B
:If B=0:Goto 3 //////même si B est différent de 0 on va au lbl 3
:Lbl 3 /////peut-être un goto 2 que tu as oublié
:EffEcr
:Input "NOMBRE?",C
:If C=A:Then:EffEcr:Disp "BIEN JOUE!
:S+1=S
:Pause
:Goto 1
:End
:If C#A:Then:EffEcr:Disp "ECHEC!","LE NOMBRE ETAIT:",A,"SCORE",S[/quote]
|
Code |
:-1->S
:EffVar C
:0
:While C=Rep
:S+1->S
:Pause "PRET?
:EffEcr
:entAléat(100000,999999
:For(A,0,30
:Output(4,6,rep
:End
:EffEcr
:Input "NOMBRE?",C
:If C=rep
:Disp "BIEN JOUE!
:End
:Disp "ECHEC!","LE NOMBRE ETAIT:",Rep,"SCORE:",S
|
Voila j'ai essayé de l'optimiser mais ce n'est pas sur qu'il prenne moin d'octets 
|
 |
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 12:50
|
|
|
Samsam, je ne sais pas si tu as testé ton code, mais je ne pense pas qu'il marche car la :
Code | :Input "NOMBRE?",C
:If C=rep |
Normalement rép prend la valeur que tu viens de donner à C donc tu gagne tout le temps.
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes 
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
 |
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Lun 30 Juil 2012, 12:57
|
|
|
J'ai essayé ça avant de poster! je ne suis pas suicidaire non plus!
Code |
:0
:DelVar C
:While C=Ans
:RandInt(1,10
:Disp ans
:Input C
:Disp Ans
:End
|
Et la calto m'affichait toujours la valeur de rand
|
 |
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 13:09
|
|
|
Ah, désolé, autant pour moi^^
Dans ton code, on peux quand même changer quelques trucs genre le while qui se transforme en repeat te permet de retirer le 0 juste avant et le EffVar C :
Code | :-1->S
:Repeat C=/=Rep
:S+1->S
:If S : Disp "BIEN JOUE ! <-- Prend moins de place :D
:Pause "PRET?
:EffEcr
:entAléat(E5,999999
:For(A,0,30
:Output(4,6,rep
:End
:EffEcr
:Input "NOMBRE?",C
:End
:Disp "ECHEC!","LE NOMBRE ETAIT:",Rep,"SCORE:
:S <-- permet d'enlever un guillemet et une virgule |
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes 
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
 |
|
|
The K
Autorisation : Membre
Nb de messages : 878
Inscrit le : Sam 15 Oct 2011, 11:07
|
Posté le : Lun 30 Juil 2012, 13:29
|
|
|
999999 = E6-1
A moins que E6-1 soit considéré comme E5. Je ne sais pas !
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Un problème de programmation ? Allez consulter ce tutoriel crée pour cela : TUTORIEL PROGRAMMATION
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Mes programmes sur le site : Produit scalaire KMorpion Puissance 4 Mastermind
Mes nouveaux programmes de calcul formel : FCarré FPrime
Projet base de données : ici mais abandonné. Trop de travail ... |
 |
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 13:34
|
|
|
:p J'y avais même pas pensé. Non, E6-1 est bien égal à 999999, c'est x10^(6-1) qui est égal à E5
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes 
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
 |
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Lun 30 Juil 2012, 14:37
|
|
|
@samsam: Oui j'avais bien oublier un Goto 2 
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
 |
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Lun 30 Juil 2012, 15:40
|
|
|
Si le For est une temporisation, il est innutile de placer le output à l'intérieur puisque ce output affiche un unique nombre à chaque tour de jeu.
Code | EffVar SRepeat C-Rep // EffVar S est léger et C-Rép est plus simple
If S : Disp "BIEN JOUE !
S+1->S // il suffisait d'intervertir les lignes pour se passer du -1->S
Pause "PRET?
EffEcr
entAléat(E5,999999
Output(4,6,Rép
For(A,1,30 // j'ai sortit la boucle
End
EffEcr
Input "NOMBRE?",C
End
Disp "ECHEC!","LE NOMBRE ETAIT:",Rep,"SCORE:
S |
Quand j'ai extrait output de la temporisation, je voulais me débarrasser de Rép et faire plus propre.
Puis je me suis aperçu que le Repeat C-Rép se sert de Rép, et je sais que Output ne modifie pas Rép.
EDIT: augmentez le nombre de la boucle For pour augmenter la durée d'affichage.
---------------------- 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 |
 |
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 15:46
|
|
|
Je pense que ce qu'il voulait faire c'était mettre du temps pour que l'on se souvienne du nombre. La dans ton code sa change tout, il faut se rappeler du dernier nombre que l'on voit 1/4 de seconde :p
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes 
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
 |
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Lun 30 Juil 2012, 16:03
|
|
|
Je me suis d'abord basé sur le dernier programme posté, qui correspond assez bien au programme original excepté pour les menus.
Si le timing est trop court, ce n'est pas mon problème. C'était ainsi dans le code original, malgré une lenteur accrue par des défauts d'optimisation.
---------------------- 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 |
 |
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Lun 30 Juil 2012, 16:04
|
|
|
Citer : snap | Je pense que ce qu'il voulait faire c'était mettre du temps pour que l'on se souvienne du nombre. |
C'est tout à fait ça 
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
 |
|
|