π
<-

jeu de calcul mental 100% fini, recherche idées

jeu de calcul mental 100% fini, recherche idées

Unread postby youngswastika » 03 Feb 2015, 23:14

Bonjour, voici un jeu de calcul mental réalisé par mes sois, le principe est simple :
on choisit le type d'opérations qui doivent apparaitre à l'écran (=,-,*,/)
on choisit le nombre de chiffres que l'on veut pour chaque nombre
10 calculs apparaissent 1 par 1 à l'écran, le but est d'avoir la meilleure note sur 10 possible

le code source du jeu :


Code: Select all
Gridoff
CoordOff
AxesOff
LabelOff
ExprOff
ClrHome
While Y!=92 or Y!=93
getKey->Y
If Y=92
Goto 5
If Y=93
Then
Goto Q
End
Output(1,1,"POUR JOUER A CE"
Output(2,1,"JEU, IL FAUT"
Output(3,1,"MASQUER OU"
Output(4,1,"SUPPRIMER LES"
Output(5,1,"FONCTIONS"
Output(6,1,"[1] CONTINUER"
Output(7,1,"[2] QUITTER"
End
Lbl 5
ClrDraw
ClrHome
While Y!=92 or Y!=93 or Y!=94
getKey->Y
If Y=92
Goto 6
If Y=93
Goto I
If Y=94
Then
Goto Q
End
Text(10,10,"CALCUL MENTAL"
For(X,9,58
Pxl-On(17,X
For(A,1,8
End
End
Text(20,10,"BY DORIAN           V0.6"
Text(31,10,"[1] JOUER"
Text(38,10,"[2] INSTRUCTIONS"
Text(45,10,"[3] QUITTER"
End
Lbl 6
ClrDraw
While Y!=92 or Y!=93 or Y!=94 or Y!=82
getKey->Y
If Y=92
Then
"+"->Str0
1->N
Goto 3
End
If Y=93
Then
"-"->Str0
2->N
Goto 3
End
If Y=94
Then
"*"->Str0
3->N
Goto 3
End
If Y=82
Then
"/"->Str0
4->N
Goto 3
End
Text(10,10,"TYPE D'OPERATION :"
Text(20,10,"[1] ADDITIONS (+)"
Text(28,10,"[2] SOUSTRACTIONS (-)"
Text(36,10,"[3] MULTIPLICATIONS (X)"
Text(44,10,"[4] DIVISIONS (/)"
End
Lbl 3
ClrDraw
While Y!=92 or Y!=93 or Y!=94 or Y!=82 or Y!=83
getKey->Y
If Y=92
Then
1->U
9->V
6->E
7->F
8->G
Goto 4
End
If Y=93
Then
10->U
99->V
5->E
7->F
8->G
Goto 4
End
If Y=94
Then
100->U
999->V
4->E
7->F
8->G
Goto 4
End
If Y=82
Then
1000->U
9999->V
3->E
7->F
8->G
Goto 4
End
If Y=83
Then
10000->U
99999->V
2->E
7->F
8->G
Goto 4
End
1->Q
0->S
Text(1,1,"NOMBRE DE CHIFFRES :"
For(A,15,47,8
Text(A,10,"["
Text(A,13,Q
Text(A,17,"]"
Text(A,21,Q
Text(A,26,"CHIFFRE"
Q+1->Q
End
For(A,23,47,8
Text(A,54,"S"
End
End
ClrHome
ClrDraw
Lbl 4
For(T,1,10
ClrHome
randInt(U,V->B
randInt(U,V->C
Output(4,E,B
Output(4,F,Str0
Output(4,G,C
If N=1:B+C->O
If N=2:B-C->O
If N=3:B*C->O
If N=4:Then:B/C->O:End
Output(8,2,"SCORE :"
Output(8,9,S
Input "RESULTAT : ",P
If P=O:Then:S+1->S:End
If P!=O:Then:S+0->S:End
End
ClrDraw
While Y!=92 or Y!=93
getKey->Y
If Y=92
Goto 5
If Y=93
Then
Goto Q
End
Text(10,10,"PARTIE TERMINEE"
Text(20,10,"SCORE :"
Text(20,39,S
Text(20,48,"/10"
Text(39,10,"[1] MENU PRINCIPAL"
Text(47,10,"[2] QUITTER"
End
Lbl I
ClrDraw
Text(1,12,"CALCUL MENTAL :"
Text(11,1,"APRES AVOIR SELECTIONNE"
Text(19,1,"LE  TYPE D'OPERATION"
Text(27,1,"A FAIRE, LE BUT EST DE"
Text(35,1,"RESOUDRE LES 10 CALCULS"
Text(43,1,"EN FAISANT LE MINIMUM"
Text(51,1,"D'ERREUR"
Repeat getKey
End
ClrDraw
Text(10,10,"NOTE :"
Text(20,1,"POUR UN NOMBRE NEGATIF :"
Text(28,1,"IL FAUT UTILISER"
Text(36,1,"LA TOUCHE (-) QUI SE TROUVE"
Text(44,1,"EN DESSOUS DE LA TOUCHE 3"
Repeat getKey
End
Goto 5
Lbl Q
ClrHome
ClrDraw



cependant plusieurs difficultés auxquelles je suis confrontées :

1- 2 autres modes de jeux dans les quels il faudrait soit résoudre 10 calculs le plus vite possible (si un est faux, la partie est perdue)
et l'autre mode de jeu : faire le maximum de calculs en 25 secondes
si quelqu'un pouvait m'indiquer un peu comment je pourrais gérer le temps

2- il faudrait que j'utilise un autre moyen pour rentrer la solution d'un calcul qu'un input, car plusieurs défauts font leur apparition :
- par exemple, si le calcul est 3+6 , si on rentre 9, le calcul est validé, classique, mais si on rentre 12-3 ou 8+1, ou même 3+6
le calcul est validé également...
- si on efface un chiffre lors de la saisie dans l'input (si on s'est trompé dans la saisie par exemple) le calcul disparait, et ça peut s'averer genant...
- je ne crois pas qu'avec input on puisse fixer des limites de temps, je pense que c'est l'utilisation des input qui limite l'utilisation d'un "timer"
dans ce jeu (les guillemets sont importants)


voila, si quelqu'un a son aide à m'apporter, ce serait plus que bien ;)
User avatar
youngswastika
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Level up: 93.3%
 
Posts: 7
Joined: 15 Dec 2014, 21:48
Location: au mauvais endroit, au mauvais moment
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: seconde (lycée)

Re: jeu de calcul mental 100% fini, recherche idées

Unread postby Wistaro » 04 Feb 2015, 08:27

Bon programme !

Quelques optimisations à faire:

Code: Select all
O->S


Code: Select all
Delvar S



Pour gérer le temps, tu peux incrémenter une variable quu pourrais symboliser une base de temps. Ou utiliser l'horloge sur TI84/...
Nouveau sur le site, ClaudeBot [spider] ? Avant de poster sur le chat et sur le forum, n'oublie pas de lire les règles. En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:
Image
Découvre mes programmes et mon site!
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.5%
 
Posts: 3191
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro

Re: jeu de calcul mental 100% fini, recherche idées

Unread postby youngswastika » 04 Feb 2015, 12:35

je comprends pas le "O->S" quelle est l'utilité ?

et je sais pas du tout comment utiliser l'horloge de la ti 84+, t'as pas deux/trois conseils par hasard ?
User avatar
youngswastika
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Level up: 93.3%
 
Posts: 7
Joined: 15 Dec 2014, 21:48
Location: au mauvais endroit, au mauvais moment
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: seconde (lycée)

Re: jeu de calcul mental 100% fini, recherche idées

Unread postby Wistaro » 04 Feb 2015, 12:51

En fait pour affecter 0 à une variable, tu peux, au lieu de faire un 0->Ta_variable, faire "Delvar O".
Tu économises un octet de mémoire.
En plus tu peux ajouter une expression derrière autre que un Lbl, une boucle ou une condition ! (sinon sa risque de poser des soucis, voir cet article

Un exemple :

Code: Select all
1->A
Delvar B27->C


Bref.
Pour gérer l'horloge, tu as plusieurs façons. Moi, ce que je fais, c'est que je me sers de la fonction "StartTmr()"

Cette fonction donne le timestamp, c'est à dire le nombre de secondes écoulées depuis une certaine date.

Pour l'utiliser, il suffit de l'affecter à une variable à une date T:

Code: Select all
StartTmr->T


Pour afficher le nombre de secondes écoulées depuis cette date, il suffit de faire :

Code: Select all
Disp StartTmr - T


Ainsi, on peut avoir un petit programme comme celui-ci :

Code: Select all
StartTmr -> T

While 1
Output(1,1,"Nb secondes"
OutPut(2,1,"ecoulees:"
OutPut(4,1,"StartTmr -T

End



C'est tout bête ^^


Sinon tu as d'autres méthodes:
Stocker l'heure, la minute et la seconde dans une liste:

Code: Select all

GetTime -> L1



L1(1)=Heure
L1(2)=Minutes
L1(3)=Secondes


Et
Code: Select all
GetDate ->L2



L2(1)=Année
L2(2)=Mois
L2(3)=Jour


Sinon pour tes autres problèmes, tu peux utiliser un "InPut graphique " comme j'ai pu l'employer dans ce programme: archives_voir.php?id=121776

C'est plus contraignant, long et plus lent qu'un input classique. Mais le résultat est plus beau visuellement. En plus, tu peux ne mettre que les 9 chiffres (et éventuellement le signe de négatif si tu traites des chiffres < 0)

Voilà, j'espère avoir répondu à tes questions ! Si tu en as d'autres, n'hésite pas :)
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.5%
 
Posts: 3191
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro

Re: jeu de calcul mental 100% fini, recherche idées

Unread postby Bisam » 04 Feb 2015, 23:33

Pour le problème de l'input qui permet de rentrer un calcul, le seul moyen de le contourner est de créer un programme qui prend note des touches utilisées et fait les affichages en conséquence, en interdisant les touches d'opérations...
Mais c'est loin d'être facile à faire.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: jeu de calcul mental 100% fini, recherche idées

Unread postby Wistaro » 05 Feb 2015, 12:54

En effet, comme le dit Bisam, c'est compliqué.

Mais tu peux t'inspirer de mon code (ou d'un autre) et je peux t'expliquer le fonctionnement, si tu le souhaites
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.5%
 
Posts: 3191
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro


Return to TI-Basic

Who is online

Users browsing this forum: No registered users and 5 guests

-
Search
-
Social TI-Planet
-
Featured topics
Ndless for CX 4.5.5 / CX II 6.2.0
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
4618 utilisateurs:
>4593 invités
>17 membres
>8 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)