Poster un nouveau sujet Poster une réponse Page: 1,      >>
simulateur de lancé de dé a 6 face
Auteur Message
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Dim 12 Avr 2015, 22:25   Citer 

un programme a la con tout est dans le titre se serait juste pas mal de l'optimiser vue qu'au delà de 50 lancé ça rame:

Code
EffEcr
0->A
0->B
0->C
0->D
0->E
0->F
0->G
0->H
Disp "Combiens de","lancé?
Input B
EffEcr
Lbl 1
If B>0
entAléat(1,6->A
B-1->B
If A=1
Then
C+1->C
End
If A=2
Then
D+1->D
End
If A=3
Then
E+1->E
End
If A=4
Then
F+1->F
End
If A=5
Then
G+1->G
End
If A=6
Then
H+1->H
End
If B>0
Goto 1
Disp "1","2","3","4","5","6
Output(1,4,C
Output(2,4,D
Output(3,4,E
Output(4,4,F
Output(5,4,G
Output(6,4,H



----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Dim 12 Avr 2015, 22:39   Citer 

Toujours jouer avec des listes, c'est beaucoup mieux <3


Code
EffEcr
effList L1
Disp "Combiens de","lancé?
Input B
EffEcr
for(A,1,B
entaleat(1,6->C
1+L1(C->L1(C
end
Disp "1","2","3","4","5","6
for(A,1,6
Output(A,4,L1(A
end



----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
m@thieu41



Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
Posté le : Dim 12 Avr 2015, 22:43   Citer 

Salut !
entAleat(1,6,x permet de renvoyer une liste de x lances, quelques opérations sur les listes et c'est joue winkle.gif

----------------------
Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)

Et au fait: la politesse n'a jamais tué personne winkle.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Dim 12 Avr 2015, 22:46   Citer 

Malheureusement,je ne me souviens plus de ce que les listes ont a offrir comme fonctions cry.gif Faudrait que je m'y remette !
Dans tous les cas, je pense que pour ce résultat même avec les fonctions sur les listes, ça prendrait autant de place^^

----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Dim 12 Avr 2015, 22:57   Citer 

a
Code
1+L1(C->(C

j'ai une erreur sur le symbole sto

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Dim 12 Avr 2015, 23:05   Citer 

Tu n'as pas écris le deuxième L1 dans la ligne, faute de frappe? Si oui, alors essaie de fermer les parenthese happy.gif

----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
m@thieu41



Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
Posté le : Dim 12 Avr 2015, 23:12   Citer 

En version courte :p

Code
Input "NB LANCES:",X
entAleat(1,6,X->L1
EffEcr
Disp 1,2,3,4,5,6
For(A,1,6
Output(A,4,somme(L1=A
End



----------------------
Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)

Et au fait: la politesse n'a jamais tué personne winkle.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Dim 12 Avr 2015, 23:17   Citer 

Ah gg ! Je sais pas si ça marche mais je pense que tu l'as testé ^^
Je savais pas que ça donnerais ce résultat somme (L1=A) c'est quand même bizarre faut l'avouer ! ^^ je pense pas pouvoir faire mieux la xD

----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Dim 12 Avr 2015, 23:20   Citer 

Ah bah je viens de penser à quelque chose !
Test ça stp <3


Code

Input "NB LANCES:",X
EffEcr
entAleat(1,6,X
For(A,1,6
Disp A
Output(A,4,somme(rep=A
End



Si ça marche on gagne 4 octets !! oO

----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
m@thieu41



Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
Posté le : Dim 12 Avr 2015, 23:24   Citer 

Je n'ai pas pu le tester mais pour explication :
L1=A renvoie une liste de booleens de la meme taille que L1 avec chaque terme qui vaut 1 si celui de L1 valait A et 0 sinon.
En prenant la somme on a donc le nombre de termes égaux a A happy.gif
Ex :
{1,3,2,1}=1 renvoie {1,0,0,1}
Et somme({1,0,0,1} renvoie 2 ce qui est bien le résultat voulu winkle.gif

Edit: Oui effectivement il restait des optimisations a faire bien vu winkle.gif

----------------------
Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)

Et au fait: la politesse n'a jamais tué personne winkle.gif
 Adresse email Haut de page Bas de page 
 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Lun 13 Avr 2015, 10:57   Citer 

le prog de M@thieu41 marche a la perfection et rame beaucoup moin que le miens glasses.gif 200 lancé en 20sec godgrace.gif celui de snap aussi je viens de le tester

je pensais pas être aussi mauvais quand je vois la page que j'ai écris... moodforlove.gif

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Mar 14 Avr 2015, 11:34   Citer 

problème que je ne constate que maintenant : impossible de dépasser la barre des 950 lancé : erreur mémoire contrairement a ma version pas du tout opti

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
m@thieu41



Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
Posté le : Mar 14 Avr 2015, 13:51   Citer 

Oui la taille des listes est limitée a 999... Mais on peut se débrouiller quand même je poste ça ce soir j'ai pas le temps la ^^

----------------------
Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)

Et au fait: la politesse n'a jamais tué personne winkle.gif
 Adresse email Haut de page Bas de page 
 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Mar 14 Avr 2015, 15:30   Citer 

ok alors j’attends happy.gif

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Mar 14 Avr 2015, 20:07   Citer 

Comme ça je dirais que ça devrais marcher, mais je suis pas très sur xD
Faudrait tester <3


Code
Input "NB LANCES:",X
EffEcr
effList L1
for(I,1,X/900+1
entAleat(1,6,900-(-X+900(I+1))(I=partEnt(X/900+1
For(A,1,6
L1(A)+somme(rep=A->L1(A
end
end
for(A,1,6
Disp A
Output(A,4,L1(A
End



----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Mer 15 Avr 2015, 11:26   Citer 

erreur de domaine a la 5ème ligne de ton code

Code
entAleat(1,6,900-(-X+900(I+1))(I=partEnt(X/900+1


happy.gif

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Mer 15 Avr 2015, 15:39   Citer 

Ah oui, je pense avoir trouvé le problème ! Essaie ça :


Code
entAleat (1,6,900-(900I-X)(I=partEnt (X/900+1



----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
leo_85



Autorisation : Membre
Nb de messages : 132
Inscrit le : Mer 03 Déc 2014, 14:13
Posté le : Jeu 16 Avr 2015, 11:15   Citer 

du coup maintenant l'erreur est a
Code
Output(A,4,L1(A

je sais pas si c'est du au fait que j'ai essayé qu'avec 10 lancés extraterre.gif

----------------------
futur analyste programmeur possesseur d'une TI 82 Plus toute neuve godgrace.gif
 Adresse email Haut de page Bas de page 
 
snap



Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
Posté le : Jeu 16 Avr 2015, 14:20   Citer 

C'est peut-être dû au EffList L1, je sais plus si ça supprime la liste ou si ça met tout à 0, essaie, à la place de ce EffList L1 de mettre :


Code
{0,0,0,0,0,0->L1



Et normalement ça devrais marcher avec n'importe quel nombre de lancé winkle.gif

----------------------
Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes happy.gif
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr
 Adresse email Haut de page Bas de page 
 
Mingerton



Autorisation : Membre
Nb de messages : 504
Inscrit le : Ven 07 Déc 2012, 20:09
Posté le : Jeu 16 Avr 2015, 18:40   Citer 

EffList supprime la liste en effet. Pour la ramener à 0, tu peux aussi utiliser ceci qui est plus léger :

Code
Fill(0,L1


Si c'est juste ponctuel et que tu penses réutiliser L1 telle qu'elle était avant d'être effacée, tu peux aussi écrire 0L1 quand tu en as besoin.

----------------------
Mes articles
Mes programmes en ligne (je termine peu de projets)

Guide traduction Algo-Basic, par Linkakro
Catalogue des fonctions 82/83/84 FR/EN
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse Page: 1,      >>





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink