Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
Posté le : Ven 21 Déc 2012, 15:23
bonjour à tous aujourd'hui je vous présente mon premier programme sur ce site j'ai travaillé quelques heures dessus et celui ci n'est pas 100% terminé mais il est déjà bien avancé et complètement jouable maintenant le code
programmé sur Ti82
Code
ClrHome
If V=0
Then
int(rand*100+1->V Je sais pas si je peux le mettre sur le if
End
Disp "MONEY",V
Input "MISE=",T
If T>V:V->T
End
V-T->V
4->A
Lbl 2
int(rand*10+1)->E
If A=4:E->B
End
If A=3:E->F
End
If A=2:E->G
End
If A=1:E->H
End
If A>0:A-1->A
Goto 2
Else
End
G+H->I
F+B->J
Disp H,G
Disp "PTS:",I
Pause
Lbl 0(celui au dessus du 3 avec alpha)
If I<21
Then
Pause
Menu("CARTE","OUI",1,"NON",4
End
Lbl 1
If I<ou=21
int(rand*10+1)->L
I+L->I
Disp L,I
Goto 0(celui au dessus du 3 avec alpha)
End
Lbl 4
ClrHome
End
If I>21
Then
Disp "PERDU"
Disp "CROUPIER",J
Disp "VOUS",I
End
Lbl 3
If J<ou=17 (vous pouvez modifier cette valeur comme bon vous semble)
Then
J+int(rand*10+1)->J
Goto 3
Else
End
If J>21 and I<ou=21
Then
Disp "GAGNE"
Disp "CROUPIER",J
Disp "VOUS",I
V+T*2->V
End
If J>I and J<ou=21
Then
Disp "PERDU"
Disp "CROUPIER:",J
Disp "VOUS:",I
End
If I>J and I<22
Then
Disp "GAGNE"
Disp "CROUPIER",J
Disp "VOUS:",I
V+T*2->V
End
If J=I or J>21 and I>21
Then
Disp "EGALITE:",J(ou I)
V+T/2->V
End
If I=21:P+1->P:V+T/2->V
End
Disp "NBRE 21",P
Disp "MONEY=",V
Pause
ClrHome
Output(1,1,"
Je sais parfaitement qu'il est nettement améliorable mais je touche pas à cette partie
Maintenant une partie de code additionnel pour embellir ce programme à mettre entre le Lbl1 et le ClrHome ou avant en faite cela met égale
(à noter que cette partie rajoute beaucoup d'octects)
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Ven 21 Déc 2012, 17:00
Si c'est un premier programme c'est déja très bien
(même si j'peux pas vraiment vérifier à 100% je connais pas les règles du blackjack ...)
Juste un détail a reproduire le moins possible :
Code
If A>0
Then
A-1->A
Goto 2
End
Les Goto a l'intérieur de boucles, ça c'est mauvais (à moins que ce soit voulu mais ... bon faut avoir un sacré niveau en progra basic pour ça !).
Pourquoi ?
En fait ton goto t'amène a un autre endroit du programme.
Et le End juste après n'est pas bouclé.
Cela n'est pas super gênant à priori mais dans els programmes ou on a des boucles qui s'emboîtent et se répètent cela commence à faire beaucoup de boucles pas bouclées, ce qui a pour effet un ralentissement peu agréable du programme
En général, on évite au maximum les divers labels/ goto ^^
---------------------- 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
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
Posté le : Ven 21 Déc 2012, 17:30
le goto 2 sert à ramener le programme à la distribution de carte car une seule carte à été donné à se moment si je le met après je crois qu'il y aura une distribution de carte infini
et au passage je suis en seconde et je programme depuis une semaine et j'attaque mon troisième jeu : loto
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Sam 22 Déc 2012, 10:39
Citer
le goto 2 sert à ramener le programme à la distribution de carte car une seule carte à été donné à se moment si je le met après je crois qu'il y aura une distribution de carte infini
Eh bien tu peux essayer d'arranger toute la boucle label/goto 2 avec un while ou un repeat
---------------------- 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
Autorisation : Membre
Nb de messages : 407
Inscrit le : Lun 07 Nov 2011, 12:09
Posté le : Ven 18 Jan 2013, 17:05
Un petit conseil soit dis en passant,
Je te conseil d'utiliser les liste pour stocker ton argent, une variable simple pouvant être modifier par un autre programme.
il suffit de rajouter
Code
1->dim(lSOUS <//-par exemple
au début du code pour créer la liste si elle ne l'est pas,
et de remplacer tout les v par lSOUS(1)
Autorisation : Membre
Nb de messages : 19
Inscrit le : Lun 17 Déc 2012, 15:20
Posté le : Ven 18 Jan 2013, 19:25
ça c'est vous qui voyez de base l'argent pour moi devrait être mis à 0 à chaque début de parti(avec un système de replay pour pas toujours recommencer à 0
---------------------- Jeu en cour de programmation: Black jack
90%
possesseur d'une ti82