| Jeu de la vie |
| Auteur |
Message |
Lee-korn
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
|
Posté le : Sam 16 Déc 2017, 16:16
|
|
|
Bonjour, c'est mon premier message sur ce site. J'ai récemment découvert le jeu de la vie mais je n'arrive pas à faire un programme qui me le fait rapidement, si quelqu'un a une idée, ce ne serait pas de refus....... 
---------------------- La meilleure façon de prédire le futur est de l'inventer |
 |
|
| |
Mingerton
Autorisation : Membre
Nb de messages : 504
Inscrit le : Ven 07 Déc 2012, 20:09
|
Posté le : Dim 17 Déc 2017, 11:46
|
|
|
Bonjour,
En Basic ca va être compliqué de faire un truc rapide en effet. En revanche, si ta calculatrice supporte l'assembleur alors tu peux chercher de ce côté là, il y a moyen que ca existe.
---------------------- 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 |
 |
|
| |
Lee-korn
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
|
Posté le : Dim 17 Déc 2017, 11:49
|
|
|
Merci pour ta réponse, pour programmer en assembleur' on doit forcément passer par un ordinateur ? 
---------------------- La meilleure façon de prédire le futur est de l'inventer |
 |
|
| |
Mingerton
Autorisation : Membre
Nb de messages : 504
Inscrit le : Ven 07 Déc 2012, 20:09
|
Posté le : Dim 17 Déc 2017, 17:26
|
|
|
C'est plus facile sur ordinateur, mais pas impossible sur calculatrice puisque il est possible de programmer en hexadécimal directement dessus. Ca reste très compliqué et maîtrisé par peu de personnes.
---------------------- 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 |
 |
|
| |
Lee-korn
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
|
Posté le : Dim 17 Déc 2017, 19:05
|
|
|
Tu aurais pas un système de traduction ti basic-assembly?
---------------------- La meilleure façon de prédire le futur est de l'inventer |
 |
|
| |
Lee-korn
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
|
Posté le : Dim 17 Déc 2017, 20:15
|
|
|
Voici ce que j'ai créé pour le moment, c'est un peu lent mais ça marche
| Code |
94->Xmax
0->Xmin
0->Ymin
62->Ymax
Effecran
Disp "PATIENTEZ SVP
arrondir(abs (.1marAleat(16,8)),0->[A]. //on remplit un tableau 16*8 aléatoirement
{16,8->dim([B]
Dim([B]-> dim([C]
Effecran
0->A
For(I,1,16
For(K,1,8
If [A](I,K
Then
1+A->A
A->dim(L1
A->dim(L2 //on enregistre les positions allumées
I->L1(A
K->L2(A
Output(K,I,"*
End //on affiche une première fois la matrice
End
End
{1,1,1,0,-1,-1,-1,0->L5
{1,0,-1,-1,-1,0,1,1->L6
Lbl 1
Remplir(0,[B]
For(I,1,A
L1(I->E
L2(I->F
For(K,1,8
E+L5(K->O
F+L6(K->P //on ajoute 1 à toutes les positions autours des points allumés
If O>0 et O<17 et P>O et P<9 // on vérifie si on ne sort pas de la matrice
1+[B](O,P->[B](O,P
End
End
Effliste L1,L2
O->A
For(I,1,16
For(K,1,8
[B](I,K)=2 et [A](I,K) ou 3=[B](I,K->H // on vérifie les morts et les naissances
If H
Then
A+1->A
A->dim(L1
A->dim(L2
H->[C](I,K
I->L1(A
K->L2(A
Output(K,I,"*
Else
0->[C](I,K
Output(K,I," [espace]
End
End
End
[C]->[A]
Goto 1
|
Si quelqu'un a des suggestions, ce serait volontier 
---------------------- La meilleure façon de prédire le futur est de l'inventer |
 |
|
| |
m@thieu41
Autorisation : Membre
Nb de messages : 848
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 18 Déc 2017, 18:07
|
|
|
En ti-basic, tu n'arriveras pas à faire mieux qu'un algorithme naif à mon avis.
Après en Asm tu peux envisager de coder l'algorithme hashlife, reposant sur le pré-calcul. https://en.wikipedia.org/wiki/Hashlife
Mais pour un écran aussi petit autant rester sur l'algorithme naif, qui sera bien assez rapide à mon avis. Après si tu passe en pxl par pxl ça peut valoir le coup.
Dans tous les cas en ti basic tu n'arriveras pas à avoir une bonne complexité.
Et non, il n'existe pas de 'traducteur' Ti-Basic->Asm, car ça n'a pas trop de sens de traduire un langage à un autre, spécialement ici tant les logiques sont éloignées.
---------------------- 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  |
 |
|
| |
Lee-korn
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
|
Posté le : Lun 18 Déc 2017, 21:10
|
|
|
Merci pour ta reponse
L'admet a t il les mêmes limites de mémoire que la ti?(400 cellules pour la matrice et 999 pour les listes)
Sinon, ou pourrais je trouver un bon tuto pour asm? 
---------------------- La meilleure façon de prédire le futur est de l'inventer |
 |
|
| |
m@thieu41
Autorisation : Membre
Nb de messages : 848
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Jeu 21 Déc 2017, 0:58
|
|
|
Les langages n'ont rien à voir, tu n'as pas la même notion de variable en asm.
Tu n'es pas autant limité, en particulier tes 'matrices' et 'listes' que tu peux définir n'auront pas de limites de ce type, elles dépendront juste de la mémoire dispo.
Yep, je te conseille de commencer par ce tuto (https://openclassrooms.com/courses/apprendre-l-asm-z80-pour-ti/materiel-necessaire-2), sachant que pour assembler en 83p j'utilisais SPASM puis bin2var (en ligne de commande : spasm -T -A -DTI83=TI83 -DUNSQUISHED=UNSQUISHED test.z80 TEST.bin
bin2var2 TEST.bin TEST.83p)
Je pense que je vais faire un petit tuto où je mettrai un max de référence pour débuter en asm sur 82stats, vu que la plupart des tutos sont sur 83+ il y a quelques petits détails à savoir 
---------------------- 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  |
 |
|
| |
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Mar 02 Jan 2018, 23:44
|
|
|
Salut, à l'avenir prends l'habitude de chercher s'il n'y a pas déjà un sujet correspondant à ton attente 
(Sur Google : " site:tout82.free.fr jeu de la vie ").
Tu trouveras ici un programme fait par linkakro :
https://tout82.pages-perso.free.fr/forum/sujet.php?sujet=4196
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
https://web.archive.org/web/20190527230815/https://sl-tiprog.e-monsite.com :site en cours de création. |
 |
|
| |
m@thieu41
Autorisation : Membre
Nb de messages : 848
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Mer 03 Jan 2018, 12:37
|
|
|
Well, ce sujet ne répond pas vraiment au présent, vu qu'on parle ici d'une façon efficace de le faire, alors que Linka avait juste envoyé un code don il disait lui même qu'il n'était pas "La manière de redessiner l'écran est implémentée d'une manière peu satisfaisante", du coup je ne trouve pas absurde de refaire un sujet ^^
---------------------- 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  |
 |
|
| |
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Sam 06 Jan 2018, 15:19
|
|
|
OK autant pour moi ^^
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
https://web.archive.org/web/20190527230815/https://sl-tiprog.e-monsite.com :site en cours de création. |
 |
|
| |