Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Machine a sous
scalt le 11/12/2005 à 17:45
Voilà un petit jeu de machine a sous ...
Code
lbl 1
clrhome
For(x,1,16,1)
output(1,x,"*"
output(8,x,"*"
end
For(x,1,8,1)
output(x,1,"*"
output(x,16,"*"
end
output(4,5,"by scale")
pause: goto 2
lbl 2
clrhome
output(1,1,"somme :"
output(1,9,t
if t <=0
then:goto 3
end
pause
clrhome
t-1ù (
) t
output(1,1,"****************")
output(8,1,"****************")
output(5,4,"["
output(5,6,"]"
output(5,7,"["
output(5,9,"]"
output(5,10,"["
output(5,12,"]"
pause
randint(0,9)ù (
) f
randint(0,9)ù (
) w
randint(0,9)ù (
) v
output(5,5,f
output(5,8,w
output(5,11,v
if f=w and f=v and v=w
then:output(7,1,"gagner !"
t+10ù (
) t
end
if f=/w and f=/v and w=/v
then :output(7,1,"perdu !"
end
pause: goto 2
lbl 3
clrhome
output(1,1,"tu n'as plus de"
output(2,1,"sous !"
10ù (
) t
pause: goto 1
Donc voilà. vous pouvez egalement trouvez d'autre code sur mon blog
craminou le 11/02/2006 à 23:50
je bug 1 peu sur ton prog...
g 1 82 stat é je trouve pas "ùf" ,"ùw", "ùv", ni "t-1ùt"... tu lé trouve ou stp???

scalt le 12/02/2006 à 10:57
Ben au fait c'est pas les touche que tu pense, ù c'est la touche "sto" o dessus de "on" c'est pour donné la valeur o letre a coté.Wolfed le 31/10/2009 à 23:02
A mon tour de 'upper' un topic
Je me suis permis de modifier un peu le programme (ça m'entraine !) même si celui-ci ne contenait aucune erreur. Par contre, du coup, il est un peu plus long :/ Mais rapide si la version de départ est déjà écrite.
Code
:Lbl 1
:ClrHome
:1000->T
:For(X,1,16,1)
:Output(1,X,"*
:Output(8,X,"*
:End
:For(X,1,8,1)
:Output(X,1,"*
:Output(X,16,"*
:End
:Output(3,4,"WELCOME IN
:Output(5,5,"SCALE'S
:Output(6,6,"CASINO
:Pause :Goto2
:Lbl 2
:ClrHome
:Output(1,1,"YOUR CHIPS :"
:Output(2,1,T
:If T[inférieur ou égal]0
:Then:Goto 3
:End
:Pause
:ClrHome
:T-10->T
:Output(1,1,"****************"
:Output(8,1,"****************"
:Output(5,4,"{
:Output(5,6,"}
:Output(5,7,"{
:Output(5,9,"}
:Output(5,10,"{
:Output(5,12,"}
:Pause
:randInt(0,5)->F
:Pause
:randInt(0,5)->W
:Pause
:randInt(0,5)->V
:Pause
:If F=W and F=V and W=V
:Then:Output(7,3,"JACKPOT !
:T+1000->T
:Pause :Goto 2
:End
:If F[différent de]W and F[différent de]V and W[différent de]V
:Then:Output(7,3,"-50 DOLLARS
:T-50->T
:Pause :Goto 2
:End
:If F=W or F=V or W=V
:Then:Output(7,4,"10 DOLLARS
:T+10->T
:Pause :Goto2
:End
:Lbl 3
:ClrHome
:Output(3,1,"****************
:Output(4,5,"NO MORE
:Output(5,6,"MONEY !
:Output(6,1,"****************
:Pause
:Menu("-PLAY AGAIN ?-","OUI",A,"NON",B)
:Lbl B
:Stop
:End
Avec cette version,
-L'accueil est un brin plus 'pancarte de casino'
-On commence le jeu avec 1000$, on en perd 50 si l'on a aucune figure, et 1000 si l'on a les trois identiques, c'est plus intéressant et plus long en cours

. De plus, le prix de la partie (10$) est remboursé lorsque l'on obtient 2 valeurs identiques.
-Il n'y a que 6 valeurs aléatoires (avec 10, on tombe très (trop) rarement sur le jackpot). J'ai mis des :Pause pour afficher les valeurs les unes après les autres, c'est plus lent mais plus réaliste ^^
-Enfin, un petit menu pour proposer une autre partie, et le jeu entièrement en américain pour se mettre dans l'ambiance Las Vegas
Voilà, j'espère que cela n'aura pas trop changé l'idée globale de départ, mais bon... Merci pour ce programme en tout cas, il est super

sypotu le 01/11/2009 à 07:55
Salut et merci à toi pour ces améliorations !
attention tu as oublié les Output de F,W et V.
2 petits conseil pour racourcir un prgm:
si tu as
[Debut du code]
Goto 2
Lbl 2
[fin du code]
le goto est inutile
si à la suite dans If il n'y a q'une instruction, tu n'es pas obligé de mettre Then et End
Voilà même si ce prgm est classique, on s'y amuse toujours autemps

Wolfed le 01/11/2009 à 14:49
Oui en effet, j'ai oublié les Output... Et d'ailleurs, en mettant quelques 69! entre, les chiffres s'affichent de manière plus réaliste ^^
Code
...
:randInt(0,5)->F
:randInt(0,5)->W
:randInt(0,5)->V
:Output(5,5,F
:69!
:69!
:69!
:69!
:69!
:Output(5,8,W
:69!
:69!
:69!
:69!
:69!
:Output(5,11,V
:69!
:69!
:69!
:69!
:69!
...
Et merci pour les deux conseils ! Le premier, j'avais remarqué, j'ai juste oublié de l'enlever en reprenant le programme original. En ce qui concerne l'astuce du If, je ne la connaissais pas, merci !
Ah, une dernière petite amélioration, pour sauveegarder et compter le score maximum :
Code
:Output(1,1,"YOUR MONEY :
:Output(2,1,T
:Output(2,6,"DOLLARS
:If T>n
:T->n
:Output(5,1,"****************
:Output(6,5,"RECORD :
:Output(7,4,n
:Output(7,9,"DOLLARS
:Output(8,1,"****************
Wolfed le 01/11/2009 à 22:28
Tiens d'ailleurs maintenant que j'y pense, est ce qu'il y aurait un moyen de placer dans un programme un :
:If A...
'spécial' pour tout variable A tapée qui n'est pas reconnue par le programme pour d'autres variables A déjà préenregistrées ?
Exemple : J'entre If A=0 ... If A=1 ... If A=2 ... jusqu'à If A=10 dans mon programme.
Si l'utilisateur entre A=11, A=1,28 ou bien A=1395472656, je voudrais que ça l'emmène vers un label spécial qui lui dirait : 'Faux' (par exemple)sypotu le 01/11/2009 à 22:59
ben tu peux taper
If A[différent de]1 et [...]A[différent de]10
ou tu peux taper
If A[supérieur à]10 ou A[inférieur à]1 ou partDéc(A[différent de]0Wolfed le 01/11/2009 à 23:08
Le problème, avec A[différent de]1 ... A[différent de]2 ...
C'est que dans ce cas, si je rentre le chiffre 1 par exemple, il me le comptera pour un [différent de]2... et il sera donc faux.
Et en ce qui concerne l'autre technique, ce n'était qu'un exemple, en réalité mon programme (concernant Pi) est de A=1, A=14, A=141, A=1415...
Avec des entiers manquants...cela ne peut pas fonctionner.
Mais bon, c'est tout simplement mon programme qui est trop compliqué (j'ai l'habitude de programmer des trucs impossibles) et sinon je ferais sans, c'est pas grave.Wolfed le 01/11/2009 à 23:13
Arf mais non, je suis à côté de la plaque, je n'ai qu'à les mettre dans une liste, mes valeurs

Rézus le 02/11/2009 à 11:50
Pour le première exemple,il faut mettre une seule condition avec des "et" par exemple:
If A[différent de]1 et A[différent de]2...
De cette façon,Si A=1,il est différent de 2,mais pas de 1,donc la condition n'est pas vérifiée.Wolfed le 02/11/2009 à 17:16
(Quand je disais que je cherchais compliqué...)
Merci, je pense que c'est en effet la meilleure solution...
En ce qui me concerne, j'ai encore amélioré le programme de machine à sous, et je pense qu'il est finalisé désormais.
Il s'agit en réalité d'un mélange entre le 421 (jeu de dés) et la machine à sous.
Maintenant, on peut choisir sa mise, et en fonction du tirage de la machine, on gagne des gains selon les règles du 421 :
-3 chiffres différents = mise perdue
-2 chiffres identiques = mise X2
-3 chiffres identiques = mise *(5X le chiffre sorti)
-Les chiffres 1, 2, 4 (dans n'importe quel ordre) = mise X50
Le jeu est encore plus intéressant ainsi. (+ encore quelques changements de décors minimes). Par contre, va falloir écrire un peu plus
Le code :
Code
:Lbl 1
:ClrHome
:1000->T
:For(X,1,16,1)
:Output(1,X,"*
:Output(8,X,"*
:End
:For(X,1,8,1)
:Output(X,1,"*
:Output(X,16,"*
:End
:Output(2,2,"----------------
:Output(3,4,"WELCOME IN
:Output(5,5,"[votre nom]'S
:Output(6,6,"CASINO
:Output(7,2,"----------------
:Pause
:Lbl 2
:ClrHome
:Output(3,1,"****************
:Disp "*"
:Output(3,1,"YOUR CHIPS :
:Output(4,1,T
:If T>n
:T->n
:Output(5,1,"----------------
:Output(6,5,"RECORD :
:Output(7,4,n
:Output(8,1,"****************
:Input "BET : ",X
:T-X->T
:If T[inférieur]0
:Then:Goto 3
:End
:Pause
:ClrHome
:Output(1,1,"****************"
:Output(8,1,"****************"
:Output(3,4,"°.LUCKY.°
:Output(4,4,"---------
:Output(6,4,"{
:Output(6,6,"}
:Output(6,7,"{
:Output(6,9,"}
:Output(6,10,"{
:Output(6,12,"}
:Pause
:randInt(1,6)->F
:randInt(1,6)->W
:randInt(1,6)->V
:Output(6,5,F
:69!
:69!
:69!
:69!
:69!
:Output(6,8,W
:69!
:69!
:69!
:69!
:69!
:Output(6,11,V
:69!
:69!
:69!
:69!
:69!
:If F=W and F=V and W=V
:Then:Output(8,3,"JACKPOT !
:T+((F*5)*X)->T
:Pause :Goto 2
:End
:If F=W or F=V or W=V
:Then:Output(8,3,"WIN CHIPS X2
:T+(2*X)->T
:Pause :Goto2
:End
:If F=4 and W=2 and V=1 or F=4 and W=1 and V=2 or F=2 and W=4 and V=1 or F=2
and W=1 and V=4 or F=1 and W=4 and V=2 or F=1 and W=2 and V=4
:Then:Output(8,5,"°421 !°
:T+(50*X)->T
:Pause :Goto 2
:End
:If F[différent de]W and F[différent de]V and W[différent de]V
:Then:Output(7,3,"LOOSE CHIPS
:Pause :Goto 2
:End
:Lbl 3
:ClrHome
:Output(1,1,"****************
:Output(2,1,"****************
:Output(3,1,"*** ****
:Output(4,1,"*** NO MORE ****
:Output(5,1,"*** MONEY ! ****
:Output(6,1,"*** ****
:Output(7,1,"****************
:Output(8,1,"****************
:Pause
:Menu("-PLAY AGAIN ?-","OUI",A,"NON",B)
:Lbl B
:Stop
:End
louis54810 le 05/11/2009 à 23:27
Merci beaucoup wolfed, Je confirme qu'il marche niquel sur ta dernièe version

Bravo =)
Louis54.
louis54810 le 05/11/2009 à 23:31
Jute une question comment pouvons nous quité le jeu en pleine partie stp =') ??dysto le 06/11/2009 à 19:18
Appuie sur "ON" tout en bas à gauche puis tu verras par toi même ^^ !louis54810 le 06/11/2009 à 23:26
Lol ok merci beaucoup =')adri le 07/11/2009 à 15:14
salut jme demander si y avait pa moyen de directement mettre le prgm sur la calculette san le recopier?sypotu le 07/11/2009 à 15:51
salut
si tu as un cable oui, sinon tu est obligé de le recopier mais bon à force tu verra que tu ira très vite

dysto le 08/11/2009 à 00:48
Je me rappelle de mon premier recopiage de programme, un pong à la con de 500 octets qui m'avait pris 3h hahaha !sypotu le 08/11/2009 à 07:11
Ouai 3h pour 500 octets ça fait beaucoup

!!!
Mais je pense qu'en plus on apprend plus en recopiant que en transphérant avec le cable.
Enfin il faut faire un tout petit effort pour essayer de comprendre au moins une partie de ce que l'on recopie

adri le 09/11/2009 à 16:11
ok mci sauf que g un probleme vu que les codes st en anglais et que g la ti-82 stats.fr (rouge-français) jtrouve pa "randint" comme octet.
Est ce que vs pouvez maider?adri le 09/11/2009 à 16:14
ok mci g un otre problème jtrouve pas l'octet: "randint" sur ma ti-82 stats. fr (rouge/ français)
Est ce que vs pouvez m'aidez??sypotu le 09/11/2009 à 17:53
pas besoin de poster deux fois...
c'est entAléat
regarde dans ma signature, il y a uo lien vers un sujet de traduction
ps: ce n'est pas un octet mais une instruction
Sangohan38 le 10/11/2009 à 07:10
Citation
Merci de vous assurez que la réponse à votre question (si c'en est une !) n'est pas déjà présente :
- Dans la FAQ;
- Dans le lexique;
- Dans le sujet "Traduction des fonctions Anglaises/Françaises";
- Dans le sujet "Fonctions TI-83";
- Et partout ailleurs sur le forum !!! (utilisez pour cela le champ de recherche en haut à droite).
Tu as lu l'en-tête?
Sangohan38
louis54810 le 11/11/2009 à 00:16
Bonsoir, je sais pas si c'est normal mais quand je joue et que j'obtien par exemple 426 ca me met 421 et là je gagne énormemtn qu'alors je n'ai pas eu 421 du tout ^^'
Ensuite ca me le fait plusieur fois, je me retrouve avec 50000 jetons ^^' et ensuite je mise 10 et je fait 155 et là ca me met no more money, je comprend pas pourquoi alors que j'ai 50 000 et que je mise 10 ca me fait tout perdre :S
En attente de vos réponses, Louis54sypotu le 11/11/2009 à 07:59
Relis toi, tu as du faire une erreur...louis54810 le 11/11/2009 à 13:20
Mais j'ai tout vérifié :S Et soit je suis aveugle soit j'arrive pas à voir mes erreurs

Floyd The Wolf le 11/11/2009 à 15:46
Revérifie quand même cette ligne ('faut pas se gourrer, c'est la ligne essentielle pour le 421) :
:If F=4 and W=2 and V=1 or F=4 and W=1 and V=2 or F=2 and W=4 and V=1 or F=2
and W=1 and V=4 or F=1 and W=4 and V=2 or F=1 and W=2 and V=4
:Then:Output(8,5,"°421 !°
Sinon, aucune idée...adri le 12/11/2009 à 20:16
oki mci javez pa vu ton lien de traduction.
pas fait expre pr 2* le mem message a+ThePingouin le 20/11/2009 à 22:30
Juste comme ça, pour l'ambiance "Las Vegas", ça serait mieux si tu avais "Play again ? " avec YES ou NO plutôt que Oui ou Non comme réponses

Sinon le programme est nickel ! Bravo !
Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.