Poster un nouveau sujet Poster une réponse
Aide a la réalisation d'un black jack
Auteur Message
cbourree
Invité
Posté le : Dim 20 Nov 2011, 11:42   Citer 

Bonjour et merci d'avance,
alors voilà je m'ennuyai en cours de maths quand une idée met venu : et si je faisait un jeu de casino sur ma calculatrice !
Après y avoir penser pendant un certain temps je me suis dit que le black jack serai une bonne idée ! Ce qui va beaucoup me compliquer les choses c'est que je n'ai pas de câble ! Je vous le dit mon jeu fonctionne ! Mais il a encore besoin selon moi d'une amélioration importante* et une autre qui l'est un peu moins :
-* Pour l'instant mon prgm ne gère pas le cas de l'as (il faut forcément 1)
- Les statistiques ne sont pas bien respecté(il y a bien 4 * plus de chance de tirer un 10) mais il peut sortir 5 deux sur le terrain.
Une fois que ces deux petit problèmes seront réglé je posterai le jeu en entier dans le section qui y est consacrer mais en attendant voilà la partie qui nous intéresse :

Code
If k=92:Then ;L'utilisateur demande tirer une carte(A)
entAléat(1,13->A
If A>10:10->A



Je sais que vous allez me demander le code complet que j’écrirai quand j'aurais le temps mais j’espère que vous pourrez m'aider a faire au moins le point *

  Haut de page Bas de page 
 
The K



Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Dim 20 Nov 2011, 12:16   Citer 

Moi j'te demanderai juste de me rappeler vite fait les règle du black jack please minied.gif ...

----------------------
La la la ...

Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL

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 ...
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
cbourree
Invité
Posté le : Dim 20 Nov 2011, 12:49   Citer 

Je viens de résoudre le problème important et l'autre je ne vois vraiment pas comment mais je vais quand même te rappeler les règles ou plutôt te passer un lien https://fr.wikipedia.org/wiki/Blackjack_%28jeu%29
20 min le temps d'appliquer ma solution et je me met a recopier le code

  Haut de page Bas de page 
 
Métalocif



Autorisation : Membre
Nb de messages : 92
Inscrit le : Lun 10 Mai 2010, 19:24
Posté le : Dim 20 Nov 2011, 13:20   Citer 

C'est une bonne idée le blackjack...Tu utilise bien une liste pour noter les cartes déjà sorties?
Sinon, au blackjack, le croupier peut, je crois, utiliser plusieurs jeux.

Pour les autres jeux, un bandit manchot est inévitable...Essaie peut-être une roulette!

Métalocif

----------------------
"On ne ment jamais autant qu'avant les élections, pendant la guerre et après la chasse." Clémenceau
 Adresse email Haut de page Bas de page 
 
The K



Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Dim 20 Nov 2011, 14:27   Citer 

Eh bien, je suis curieux de voir le résultat, vu les règles relativement nombreuses qui existent bigmouth.gif

----------------------
La la la ...

Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL

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 ...
 Adresse email Haut de page Bas de page 
 
cbourree
Invité
Posté le : Dim 20 Nov 2011, 15:35   Citer 

Bon les 20 mins ont été un peu plus longues que prévu car j'ai du faire face a plein d'imprévu ... "J'ai hate de voire le résultat ...vu toute les règles qu'ils y a". Évidemment ce n'est qu'une version simplifier du jeu :
- Possibilité de tirer jusqu'à 5 cartes mais seul 4 sont visible donc flèche de gauche et droite pour faire défiler ...
- L'as vaut 1 ou 11
En gros toute les règles sauf ce qui est pour des probabilités et des mises. Car malheureusement et vous allez me dire c'est un comble je n'ai jamais jouer au black jack de ma vie mais seulement au luigi jack inclu dans le jeu mario brosh xD Donc je ne sais pas trop comment sa se passe pour les mises ... Moi j'ai fait comme sa :
- la mise est choisi avant chaque nouvelle donne !
- le joueur gagne sold+mise ->sold
- le joueur perd sold-mise ->sold
- égalité rien ne se passe !
Si quelqu'un peut avoir la gentillesse de me dire comment sa se passe réellement en attendant que je recopie mon code

  Haut de page Bas de page 
 
cbourree
Invité
Posté le : Dim 20 Nov 2011, 15:52   Citer 

je vais éditer ce message pour mettre le code manquant ... mais histoire que vous puissez le recopier et/ou l'analyser en même temps ...
A taper avant la premiere utilisation :
0->LMS(1 ; Initialiser le meilleur score a 0
0->LMS52 ; Inialiser l'argent du j

Code

;partie 1 la mise
EffEcr
Output(1,1,"1 continuer:
Output(1,13,LMS(2
Output(2,1,"2 recomencer:100
Output(4?2?3MEILLEUR SCORE
Output(5,7,lms(1
Output(7,1,"1 pour tirer
Output(8,1,"2 pour stop
Repeat J=92 ou J=93
codeTouche->J
End
if j=93
100->LMS(2
if j=92:then
if lms(2 <=0:then
effecr
Output(1,1,"pas asser dargent
pause
goto q:end
effecr:end
Output(8,1,"vous avez :
Output(8,13,lms(2
input "cb vous miser ? ",w
if w>LMS(2)
goto 9
effecr





  Haut de page Bas de page 
 
cbourree
Invité
Posté le : Dim 20 Nov 2011, 16:16   Citer 

Mince il est impossible d'éditer sur ce forum ... c'est dommage

Code

; partie 2 le jeu !
Output(1,1,"banque:
Output(1,11,"m:
entAléat(1,13->A
entAléat(1,13->B
entAléat(1,13->E
entAléat(1,13->F
if a>10:10->a
if a>10:10->b
if a>10:10->e
if a>10:10->f
0->c:0->d:0->G:0->h:0->t:0->z:-1->i:0->¤:0->u
output(2,1,"--- --- --- ---
output(4,1,"--- --- --- ---
output(6,1,"--- --- --- ---
output(8,1,"--- --- --- ---
output(1,13,w
output(5,1,"votre main :
lbl 0
if a=1 et a+b+c+d+t<12:11->a
if a=11 et a+b+c+d+t>21:then:output(3,3,"
1->a:end
if b=1 et a+b+c+d+t<12:11->b
if b=11 et a+b+c+d+t>21:then:output(3,7,"
1->b:end
if c=1 et a+b+c+d+t<12:11->c
if c=11 et a+b+c+d+t>21:then:output(3,11,"
1->c:end
if d=1 et a+b+c+d+t<12:11->d
if d=11 et a+b+c+d+t>21:then:output(3,15,"
1->d:end
if t=1 et a+b+c+d+t<12:11->t
if t=11 et a+b+c+d+t>21:then:output(3,15,"
1->t:end
if e=1 et e+f+g+h+z<12:11->e
if e=11 et e+f+g+h+z>21:then:output(7,3,"
1->e:end
if f=1 et e+f+g+h+z<12:11->f
if f=11 et e+f+g+h+z>21:then:output(7,7,"
1->f:end
if g=1 et e+f+g+h+z<12:11->g
if g=11 et e+f+g+h+z>21:then:output(7,11,"
1->g:end
if h=1 et e+f+g+h+z<12:11->h
if h=11 et e+f+g+h+z>21:then:output(7,15,"
1->h:end
if z=1 et e+f+g+h+z<12:11->z
if z=11 et e+f+g+h+z>21:then:output(7,15,"
1->z:end
if ¤diffQ:then
Output(3,3," ; un espace (pour effacer le zéro des 10
Output(3,7,"
Output(3,11,"
Output(3,15,"
Output(7,3,"
Output(7,7,"
Output(7,11,"
Output(7,15,"
end
if ¤=1:then
Output(3,2,"*
Output(3,6,b
Output(3,10,c
Output(3,14,d
Output(7,2,e
Output(7,6,f
Output(7,10,g
Output(7,14,h
output(7,16,">
output(7,16,">
0->Q
end
if ¤=0:then
Output(3,2,b
Output(3,6,c
Output(3,10,d
Output(3,14,t
Output(7,2,f
Output(7,6,g
Output(7,10,h
Output(7,14,z
output(7,16,"<
output(7,16,"<
1->Q
end
output(5,15,e+f+g+h+z
codetouche->k
if k=24:0->¤
if k=26:1->¤
if k=93:1->u

A suivre !



  Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 20 Nov 2011, 16:28   Citer 

Tu dois t'inscrire pour pouvoir éditer.
Je n'ai plus vraiment le temps pour réfléchir sur ton travail mais plus tard peut-être.

----------------------
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 
 
cbourree
Invité
Posté le : Dim 20 Nov 2011, 16:32   Citer 


Code
if g=0 et k=92:then
entaleta(1,13->g
if g>10:10->g
0->i
goto 0:end
if h=0 et k=92:then
entaleta(1,13->h
if h>10:10->h
1->i
goto 0:end
if z=0 et k=92:then
entaleta(1,13->z
if z>10:10->z
0->i
goto 0:end
if c=0 et a+b<17 et i=0 ou u=1 et c=0 et a+b<17:then
entaleat(1,13->c
if c>10:10->
goto 0:end
if d=0 et a+b+c<17 et i=0 ou u=1 etdc=0 et a+b+c<17:then
entaleat(1,13->d
if d>10:10->d
goto 0:end
if t=0 et a+b+c+d<17 et i=0 ou u=1 et c=0 et a+b+c+d<17:then
entaleat(1,13->t
if t>10:10->t
goto 0:end
if u=0:goto 0
lbl 1
a+b+c+d+t->s+e+f+g+h+z->R
effecr
0->X
if s<21 et r<22:1->x
if s<21 et r>21:2->x
if s=r:2->x
if r>s et r <22:1->
if r>21 et x=0:3->x
if s>r et s<22:3->x
output(1,1,"banque :
output(1,14,s
output(2,14,r
if x=1:then
output(5,7,"gagne
LMS(2)+w->LMS(2
end
if x=2:output(5,7,"egali
if x=3:then
output(5,7,"perdu
LMS(2)-w->LMS(2
end
output(8,1,"vous avez :
output(6,5,"---------
output(4,5,"---------
output(5,5,":
output(5,13,":
output(8,14,LMS(2
if LMS(2)>LMS(1
LMS(2)->LMS(1


Voilà je ne veux plus jamais entendre parler de if et de output ...
Alors aidez moi a améliorer le code (dans le sens le simplifier) car ce programme est extrêmement lourd !

  Haut de page Bas de page 
 
cbourree



Autorisation : Membre
Nb de messages : 2
Inscrit le : Dim 20 Nov 2011, 11:24
Posté le : Dim 20 Nov 2011, 16:35   Citer 

Code à taper avant la première utilisation :

Code
0->LMS(0
0->LMS(1


programme :

Code
EffEcr
Output(1,1,"1 continuer:
Output(1,13,LMS(2
Output(2,1,"2 recomencer:100
Output(4,2,"meilleur score
Output(5,7,LMS(1
Output(7,1,"1 pour tirer
Output(8,1,"2 pour stop
Repeat J=92 ou J=93
codeTouche->J
End
If J=93
100->LMS(2
If J=92:then
If LMS(2 <=0:then
EffEcr
Output(1,1,"pas asser dargent
Pause
Goto Q
End
EffEcr
End
Output(8,1,"vous avez :
Output(8,13,LMS(2
Input "cb vous miser ? ",w
If w>LMS(2)
Goto 9
EffEcr
Output(1,1,"banque:
Output(1,11,"m:
entAléat(1,13->A
entAléat(1,13->B
entAléat(1,13->E
entAléat(1,13->F
If a>10
10->a
If a>10
10->b
if a>10
10->e
if a>10
10->f
0->c:0->d:0->G:0->h:0->t:0->z:-1->i:0->¤:0->u
Output(2,1,"--- --- --- ---
Output(4,1,"--- --- --- ---
Output(6,1,"--- --- --- ---
Output(8,1,"--- --- --- ---
Output(1,13,w
Output(5,1,"votre main :
Lbl 0
If a=1 et a+b+c+d+t<12:11->a
If a=11 et a+b+c+d+t>21:then:output(3,3,"
1->a:end
If b=1 et a+b+c+d+t<12:11->b
If b=11 et a+b+c+d+t>21:then:output(3,7,"
1->b:end
If c=1 et a+b+c+d+t<12:11->c
If c=11 et a+b+c+d+t>21:then:output(3,11,"
1->c:end
If d=1 et a+b+c+d+t<12:11->d
if d=11 et a+b+c+d+t>21:then:output(3,15,"
1->d:end
If t=1 et a+b+c+d+t<12:11->t
If t=11 et a+b+c+d+t>21:then:output(3,15,"
1->t:end
If e=1 et e+f+g+h+z<12:11->e
If e=11 et e+f+g+h+z>21:then:output(7,3,"
1->e:end
If f=1 et e+f+g+h+z<12:11->f
If f=11 et e+f+g+h+z>21:then:output(7,7,"
1->f:end
If g=1 et e+f+g+h+z<12:11->g
If g=11 et e+f+g+h+z>21:then:output(7,11,"
1->g:end
If h=1 et e+f+g+h+z<12:11->h
If h=11 et e+f+g+h+z>21:then:output(7,15,"
1->h:end
If z=1 et e+f+g+h+z<12:11->z
If z=11 et e+f+g+h+z>21:then:output(7,15,"
1->z:end
If ¤diffQ:then
Output(3,3," ; un espace (pour effacer le zéro des 10
Output(3,7,"
Output(3,11,"
Output(3,15,"
Output(7,3,"
Output(7,7,"
Output(7,11,"
Output(7,15,"
End
If ¤=1
Then
Output(3,2,"*
Output(3,6,B
Output(3,10,C
Output(3,14,D
Output(7,2,E
Output(7,6,F
Output(7,10,G
Output(7,14,H
output(7,16,">
output(7,16,">
0->Q
End
if ¤=0:then
Output(3,2,B
Output(3,6,C
Output(3,10,D
Output(3,14,T
Output(7,2,F
Output(7,6,G
Output(7,10,H
Output(7,14,Z
output(7,16,"<
output(7,16,"<
1->Q
End
Output(5,15,e+f+g+h+z
codeTouche->k
If K=24:0->¤
if k=26:1->¤
if k=93:1->u
if g=0 et k=92:then
entaleta(1,13->g
if g>10:10->g
0->i
goto 0:end
if h=0 et k=92:then
entaleta(1,13->h
if h>10:10->h
1->i
goto 0:end
if z=0 et k=92:then
entaleta(1,13->z
if z>10:10->z
0->i
goto 0:end
if c=0 et a+b<17 et i=0 ou u=1 et c=0 et a+b<17:then
entaleat(1,13->c
if c>10:10->
goto 0:end
if d=0 et a+b+c<17 et i=0 ou u=1 etdc=0 et a+b+c<17:then
entaleat(1,13->d
if d>10:10->d
goto 0:end
if t=0 et a+b+c+d<17 et i=0 ou u=1 et c=0 et a+b+c+d<17:then
entaleat(1,13->t
if t>10:10->t
goto 0:end
if u=0:goto 0
lbl 1
a+b+c+d+t->s+e+f+g+h+z->R
effecr
0->X
if s<21 et r<22:1->x
if s<21 et r>21:2->x
if s=r:2->x
if r>s et r <22:1->
if r>21 et x=0:3->x
if s>r et s<22:3->x
output(1,1,"banque :
output(1,14,s
output(2,14,r
if x=1:then
output(5,7,"gagne
LMS(2)+w->LMS(2
end
if x=2:output(5,7,"egali
if x=3:then
output(5,7,"perdu
LMS(2)-w->LMS(2
end
output(8,1,"vous avez :
output(6,5,"---------
output(4,5,"---------
output(5,5,":
output(5,13,":
output(8,14,LMS(2
if LMS(2)>LMS(1
LMS(2)->LMS(1



 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3289
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Jeu 24 Nov 2011, 10:43   Citer 

Pas mal simplifiable ton programme outre le fait que tu peux inclure le "code à taper avant" dans le programme:


Code
2->dim LLMS     ----> Le 1er L est celui des listes.
EffEcr
Output(1,1,"1 continuer:
Output(1,13,LMS(2
Output(2,1,"2 recomencer:100
Output(4,2,"meilleur score
Output(5,7,LMS(1
Output(7,1,"1 pour tirer
Output(8,1,"2 pour stop
Repeat J=92 ou J=93
codeTouche->J
End
If J=93
E2->LMS(2    ----> Le E c'est le symbole de la puissance de 10
If J=92 and LMS(2 <=0:then
EffEcr
Pause "pas assez d'argent
Goto Q
End
EffEcr
Output(8,1,"vous avez :
Output(8,13,LMS(2
Input "cb vous miser ? ",w
If w>LMS(2)
Goto 9
EffEcr
Output(1,1,"banque:
Output(1,11,"m:
entAléat(1,13->A
entAléat(1,13->B
entAléat(1,13->E
entAléat(1,13->F
If a>10
10->a
If a>10                       -> Il n'y a pas une erreur?
10->b
if a>10
10->e
if a>10
10->f
EffVar CEffVar DEffVar GEffVar HEffVar TEffVar ThetaEffVar U
-1->I
For(Y,1,4
Output(2Y,1,"--- --- --- ---
End
Output(1,13,w
Output(5,1,"votre main :
Lbl 0
A+B+C+D+T->Y
If a=1 et Y:11->a
If a=11 et Y>21:then:output(3,3,"
1->a:end
If b=1 et Y<12:11->b
If b=11 et Y>21:then:output(3,7,"
1->b:end
If c=1 et Y<12:11->c
If c=11 et Y>21:then:output(3,11,"
1->c:end
If d=1 et Y<12:11->d
if d=11 et Y>21:then:output(3,15,"
1->d:end
If t=1 et Y<12:11->t
If t=11 et Y>21:then:output(3,15,"
1->t:end
E+F+G+H+Z->X
If e=1 et X<12:11->e
If e=11 et X>21:then:output(7,3,"
1->e:end
If f=1 et X<12:11->f
If f=11 et X>21:then:output(7,7,"
1->f:end
If g=1 et X<12:11->g
If g=11 et X>21:then:output(7,11,"
1->g:end
If h=1 et X<12:11->h
If h=11 et X>21:then:output(7,15,"
1->h:end
If z=1 et X<12:11->z
If z=11 et X>21:then:output(7,15,"
1->z:end
If ¤diffQ:then
Output(3,3," ; un espace (pour effacer le zéro des 10
Output(3,7,"
Output(3,11,"
Output(3,15,"
Output(7,3,"
Output(7,7,"
Output(7,11,"
Output(7,15,"
End
If ¤=1
Then
Output(3,2,"*
Output(3,6,B
Output(3,10,C
Output(3,14,D
Output(7,2,E
Output(7,6,F
Output(7,10,G
Output(7,14,H
output(7,16,">
output(7,16,">
0->Q
End
if ¤=0:then
Output(3,2,B
Output(3,6,C
Output(3,10,D
Output(3,14,T
Output(7,2,F
Output(7,6,G
Output(7,10,H
Output(7,14,Z
output(7,16,"<
output(7,16,"<
1->Q
End
Output(5,15,e+f+g+h+z
codeTouche->k
If K=24:0->¤
if k=26:1->¤
if k=93:1->u
if g=0 et k=92:then
entaleta(1,13->g
if g>10:10->g
0->i
goto 0:end
if h=0 et k=92:then
entaleta(1,13->h
if h>10:10->h
1->i
goto 0:end
if z=0 et k=92:then
entaleta(1,13->z
if z>10:10->z
0->i
goto 0:end
if c=0 et a+b<17 et i=0 ou u=1 et c=0 et a+b<17:then
entaleat(1,13->c
if c>10:10->
goto 0:end
if d=0 et a+b+c<17 et i=0 ou u=1 etdc=0 et a+b+c<17:then
entaleat(1,13->d
if d>10:10->d
goto 0:end
if t=0 et a+b+c+d<17 et i=0 ou u=1 et c=0 et a+b+c+d<17:then
entaleat(1,13->t
if t>10:10->t
goto 0:end
if u=0:goto 0
lbl 1
a+b+c+d+t->s+e+f+g+h+z->R
effecr
0->X
if s<21 et r<22:1->x
if s<21 et r>21:2->x
if s=r:2->x
if r>s et r <22:1->
if r>21 et x=0:3->x
if s>r et s<22:3->x
output(1,1,"banque :
output(1,14,s
output(2,14,r
if x=1:then
output(5,7,"gagne
LMS(2)+w->LMS(2
end
if x=2:output(5,7,"egali
if x=3:then
output(5,7,"perdu
LMS(2)-w->LMS(2
end
output(8,1,"vous avez :
output(6,5,"---------
output(4,5,"---------
output(5,5,":
output(5,13,":
output(8,14,LMS(2
if LMS(2)>LMS(1
LMS(2)->LMS(1



Bon j'ai craqué et j'ai pas optimisé tout le code mais de ce que j'ai vu, tu t'embête beaucoup avec des variables alors que tu pourrai faire des boucles avec des listes.

Sangohan38

 Adresse email Haut de page Bas de page 
 
cbourree
Invité
Posté le : Jeu 24 Nov 2011, 15:50   Citer 

Merci, je lz ferai moi meme quand jaurai le temps ...

  Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





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