Autorisation : Membre
Nb de messages : 835
Inscrit le : Sam 20 Jui 2009, 20:35
Posté le : Lun 01 Mar 2010, 19:00
Envie de vous mesurer a quelqu'un en calcul mental ?
Règles:
Ce programme se joue à deux,chacun son tour.La calculatrice commence par proposer deux nombres: un 1 et un nombre compris entre 1 et 5.Le joueur peut les additioner,les soustraire,les multiplier ou les diviser.Il doit entrer le résultat en bas de l'écran.Si il a bon,il gagne un point,le chiffre qui était le plus bas sur l'écran passe en haut et son résultat passe en bas.le joueur 2 peut donc a son tour faire l'opération qu'il souhaite avec ces deux chiffres ect...
Si un joueur a faux, il ne gagne pas de point et laisse le joueur 2 jouer avec les deux mêmes chiffres.
Le joueur qui a dix points de plus que son adversaire a gagné.
Stratégies:
Vous pouvez alterner entre attaque (additions et multiplications,qui augmentent les nombres,donc la difficulté) ou défense (soustraction et division,qui réduisent les nombres et donc la difficulté) toutefois une stratégie défensive devient assez vite inutile car vous ne faites que simplifier les calculs de l'adversaire.A vous de savoir l'utiliser de manière offensive en partant dans les chiffres négatifs ou dans les décimales ,en gardant à l'esprit que plus vous faites un calcul compliqué,plus celui que votre adversaire devra faire sera difficile.
Le code:
Code
:1->T:0->D:0->E
:1->A
:entAléat(1,5->B
:Lbl A
:EffEcr
:Output(1,1,"JOUEUR
:For(F,1,7
:Disp "
:End
:If partDéc(T/2)ø0
:Output(1,8,1
:If partDéc(T/2)=0
:Output(1,8,2
:Output(2,1,A
:Output(5,1,B
:Input C
:1->S
:If CøA+B et CøAB et CøA-B et CøB-A et CøA/B et CøB/A
:0->S
:If partDéc(T/2)ø0 et Sø0
:D+1->D
:If partDéc(T/2)=0 et Sø0
:E+1->E
:EffEcr
:Output(1,7,"FAUX
:If Sø0
:Output(1,6,"CORRECT
:Output(3,1,"JOUEUR 1
:Output(4,1,D
:Output(6,1,"JOUEUR 2
:Output(7,1,E
:Pause
:If D-E>9
:Goto B
:If E-D>9
:Goto C
:T+1->T
:If Sø0
:B->A:C->B
:Goto A
:Lbl B
:1->T
:Goto D
:Lbl C
:2->T
:Lbl D
:EffEcr
:Output(4,8,"LE
:Output(5,2,"JOUEUR GAGNE
:Output(5,9,T
:Pause
:Output(1,1,"
Des idées pour l'améliorer ?
MMenax Invité
Posté le : Mar 02 Mar 2010, 17:22
Un petit programme qui a l'air franchement sympatoche ! J'"abandonne" desert2 ( j'en suis à 5% mais je l'ai commencé hier ) et je copie celui-ci tout de suite
MMenax Invité
Posté le : Mar 02 Mar 2010, 17:55
Le programme marche très bien , mais il est très facile de tricher.
Ex : on a 3 et 7.256 . Si on tape 3*7.256 ou 3/7.256 la calculette affichera correct.
Peut-on y remédier ?
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 06 Jui 2010, 13:56
Je crois avoir trouvé comment empêcher la triche !
Attention cette version n'est plus compatible avec les ti 82 basiques à cause des chaînes.
J'ai annoté les lignes ajoutées ou modifiées par //
:Input "",Chaîne1 //
:expr(Chaîne1)->C //
:1->S
:If CøA+B et CøAB et CøA-B et CøB-A et CøA/B et CøB/A
:0->S
:If carchaîne(Chaîne1,"/") ou carchaîne(Chaîne1,"*") ou carchaîne(Chaîne1,"+") ou carchaîne(Chaîne1,"-") //
:0->S //
:If partDéc(T/2)ø0 et Sø0
:D+1->D
:If partDéc(T/2)=0 et Sø0
:E+1->E
:EffEcr
:Output(1,7,"FAUX
:If Sø0
:Output(1,6,"CORRECT
:Output(3,1,"JOUEUR 1
:Output(4,1,D
:Output(6,1,"JOUEUR 2
:Output(7,1,E
:Pause
:If D-E>9
:Goto B
:If E-D>9
:Goto C
:T+1->T
:If Sø0
:B->A:C->B
:Goto A
:Lbl B
:1->T
:Goto D
:Lbl C
:2->T
:Lbl D
:EffEcr
:Output(4,8,"LE
:Output(5,2,"JOUEUR GAGNE
:Output(5,9,T
:Pause
:Output(1,1,"
---------------------- 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)