Poster un nouveau sujet Poster une réponse
(Prog) MATRIX (Prog)
Auteur Message
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Ven 06 Juil 2012, 22:10   Citer 

Salut cupsmiley.gif après avoir regardé le film "MATRIX" j'ai pensé à l'idée de faire un petit programme qui reprend le défilement de caractères (comme ici) ou de 0 et 1 (comme ici) sur l'écran... Je vous laisse apprécier ce joli programme godgrace.gif

Nom: MATRIX
Taille: 146 octets
Auteur: S.L

Version Caractères:

Pour quitter le programme, appuyez sur la touche annul.

-> : flèche sto
TI Stats.fr (fonctions en Français)

Code
PROGRAM:MATRIX
:EffEcr
:1->A
:4->B
:1->X
:1->Y
:While 1
:Output(A,X,"Z3U/:-78+=3*(6"5...     //ici vous devez rentrer 16 caractères   de votre                                         //calculatrice,
                                     //à vous de décider lesquels et dans quel ordre!
:Output(B,Y,"C30*+3'(=+}'!4-{...     //ici vous devez rentrer 16 caractères   de votre                                         //calculatrice,
                                     //à vous de décider lesquels mais attention, cette                                         //fois-ci veiller à changer
                                     //les caractères de place par rapport au premier si                                       //ceux-ci sont identiques.
:If B=8:1->B
:B+1->B
:If A=8:1->A
:A+1->A
:entAléat(1,2)->X
:entAléat(1,2)->Y
:codeTouche->K
:If K=45:Then:EffEcr:Stop:End
:End


Version chiffre:

Pour quitter le programme, appuyez sur la touche annul.

-> : flèche sto
TI Stats.fr (fonctions en Français)

Code
PROGRAM:MATRIX
:EffEcr
:1->A
:4->B
:1->X
:1->Y
:While 1
:Output(A,X,"0101011101010011    //vous pouvez choisir les emplacements des 16 chiffres
:Output(B,Y,"1010000101011100    //vous pouvez choisir les emplacements des 16 chiffres
:If B=8:1->B
:B+1->B
:If A=8:1->A
:A+1->A
:entAléat(1,2)->X
:entAléat(1,2)->Y
:codeTouche->K
:If K=45:Then:EffEcr:Stop:End
:End



Donnez-moi votre avis même si il reste à perfectionner happy.gif

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



Autorisation : Membre
Nb de messages : 197
Inscrit le : Jeu 17 Nov 2011, 13:20
Posté le : Ven 06 Juil 2012, 23:09   Citer 

il y a les miens:
https://tout82.pages-perso.free.fr/forum/sujet.php?sujet=2942

----------------------
L’erreur est humaine, mais pour provoquer une vraie catastrophe, il faut un ordinateur.

je suis premier!!!

je m'aime.
 Adresse email Haut de page Bas de page 
 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Ven 06 Juil 2012, 23:30   Citer 

@tapenad: Je savais que je n'étais pas le seul minied.gif les tiens sont pas mal laugh.gif

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



Autorisation : Membre
Nb de messages : 197
Inscrit le : Jeu 17 Nov 2011, 13:20
Posté le : Sam 07 Juil 2012, 1:39   Citer 

erci c'est sympa il faudrait que j'en fasse une v3 avec plus de caractères beer.gif

----------------------
L’erreur est humaine, mais pour provoquer une vraie catastrophe, il faut un ordinateur.

je suis premier!!!

je m'aime.
 Adresse email Haut de page Bas de page 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Lun 13 Aoû 2012, 16:42   Citer 

Salut tout le monde!! ça fait vraiment super longtemps que je n'ai pas posté sur le forum, et pour cause, j'étais entré en prépa et j'avais moins de temps (ou pas)
bref, quoi qu'il en soit je reviens aujourd'hui et OH SURPRISE je vois un programme matrix. Je me permet donc de remettre le mien que j'avais déjà posté mais qui s'est trouvé un peu noyé sous les autres sujets. Il s'agit de la "vraie" animation matrix comme dans le film avec des lignes qui descendent et des caractères aléatoires. enjoy cupsmiley.gif cupsmiley.gif


Code

"[chaine de N symboles]"->chaine1   //ne choisissez pas N trop grand!!!!  10 ou 12 suffisent pour faire un rendu sympa
effecr
0->I:0->[theta]
While 1
entaleat(1,16->A     //ces 4 lignes donnent la position
entaleat(1,16->B     //des symboles qui descendent
entaleat(1,16->C     //ici en positions A B C et D, auxquelles
entaleat(1,16->D     //on associera plus tard respectivement I J K et L pour les éffacer sans perturber l'écriture des nouvelles lignes.
for(X,1,8
ouput(X,A,sous-chaine(chaine1,entaleat(1,N),1     // ces lignes définissent
if X>2
ouput(X-2,B,sous-chaine(chaine1,entaleat(1,N),1   //les symboles qui
if X>4
ouput(X-4,C,sous-chaine(chaine1,entaleat(1,N),1   //vont apparaitre
if X>6
ouput(X-6,D,sous-chaine(chaine1,entaleat(1,N),1   // à chaque fois.
if [theta]:then
if X [inférieur ou égal à]6   //celles ci n'opèrent qu'a partir de
output(X+2,J," "
if X [inférieur ou égal à] 4  // la deuxième lecture de la boucle car
output(X+4,I," "
if X [inférieur ou égal à]6   //theta n'est alors pas à la bonne valeur
output(X+2,K," "
output(X,L," "                //ce qui rend la condition non remplie. Elles effacent progressivement les symboles à partir des coordonnées associées : A et I, B et J etc...
end:end
A->I:B->J:C->K:D->L   //c'est là qu'on associe les variables pour pouvoir effacer correctement après
for(X,3,8
if X [inférieur ou égal à] 4
ouput(X+4,B,sous-chaine(chaine1,entaleat(1,N),1  //ici on continue les lignes
if X [inférieur ou égal à] 6
ouput(X+2,C,sous-chaine(chaine1,entaleat(1,N),1  //commencées dans le
ouput(X,D,sous-chaine(chaine1,entaleat(1,N),1    //premier for
output(X-2,I," "     //et ici on commence à effacer la colonne A qui est finie
if X>4
output(X-4,J," "     //pareil avec B
if X>6
output(X-6,K," "     //et avec C
end
1->[theta]    // on donne à theta la valeur nécéssaire à la validation de la condition dans le premier for
End       //euh bah là on revient au début ^^ ^^




les explications sont avec et je les laisse des fois qu'on me redemande beer.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 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 : Lun 13 Aoû 2012, 16:49   Citer 

Remplace donc Lbl 1 / Goto 1 par : While 1 / End ! winkle.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 
 
calcugeek



Autorisation : Membre
Nb de messages : 72
Inscrit le : Jeu 26 Mai 2011, 16:41
Posté le : Lun 13 Aoû 2012, 17:05   Citer 

Mais ou as tu vu un lbl1? godgrace.gif programme édité beer.gif merci du conseil mais c'est un vieux programme alors c'est possible qu'il soit un peu optimisable minied.gif

----------------------
En école d'ingénieurs depuis cette année.
Continue de programmer sur ma ti malgré les 3 tonnes quotidiennes de devoirs ^^
Fan de metallica et de tous autres groupes sachant jouer du vrai métal. (yeah!!!)
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
The K



Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Lun 13 Aoû 2012, 21:24   Citer 

Alors ...


Code

"[chaine de N symboles]->Str1
length(Str1->N                     //ajout de ceci
DelVar [Theta]ClrHome               //suppression du DelVar I
While 1
randInt(1,16->A
randInt(1,16->B
randInt(1,16->C
randInt(1,16->D
For(X,1,8
Output(X,A,sub(Str1,randInt(1,N),1
If X<6
Output(X,B,sub(Str1,randInt(1,N),1     //modif des conditions
If X<5
Output(X,C,sub(Str1,randInt(1,N),1
If X<3
Output(X,D,sub(Str1,randInt(1,N),1
If [theta]
Then
If X>2
Output(X,J,"                          //modif des conditions
If X>4
Output(X,I,"
If X>2
Output(X,K,"
Output(X,L,"             
End
End
A->I
B->J
C->K
D->L
For(X,3,8                                     //modif des conditions
If X>6
Output(X,B,sub(Str1,randInt(1,N),1
If X>4
Output(X,C,sub(Str1,randInt(1,N),1
Output(X,D,sub(Str1,randInt(1,N),1
Output(X-2,I,"
If X>4
Output(X-4,J,"                       //pas de modif ici sinon ralentissement ^^
If X>6
Output(X-6,K,"
End
1->[theta]
End   



Bon c'pas énorme hein ... il y aurais p-e moyen d'assembler les deux boucles for. J'y ai pas bcp réfléchi ^^'

----------------------
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 
 
aide
Invité
Posté le : Mer 28 Nov 2012, 21:06   Citer 

j'ai bien regardé et essayé de comprendre les lignes de code de ce programme et j'ai voulu le faire sur ma TI-82 stats.fr pour voir comment cela rendait mais j'ai eu un problème avec la fonction chaîne ! je 'explique :
j'ai écris dans la première ligne : "10"->chaîne(1
et ma calculette n'aime et je ne trouve pas pourquoi ! aidez moi svp! merci d'avance happy.gif

  Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
blg_flg



Autorisation : Membre
Nb de messages : 646
Inscrit le : Mer 23 Mai 2012, 17:28
Posté le : Mer 28 Nov 2012, 22:02   Citer 

Chaîne se trouve dans le menu [vars]. winkle.gif

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
aide
Invité
Posté le : Jeu 29 Nov 2012, 14:09   Citer 

merci beaucoup

  Haut de page Bas de page 
 
aide
Invité
Posté le : Jeu 29 Nov 2012, 14:40   Citer 

j'ai de nouveau un probème (excusez-moi), la calutte me met DOM INVALIDE et m'indique qu'il y a un problème à la fin des lignes Output(X,A,sous-chaîne(... Apparement il faut rajouter quelque chose à la fin mais je ne trouve pas quoi ! merci d'avance happy.gif

  Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 29 Nov 2012, 23:20   Citer 

Vérifie tout ce qui concerne N : il y a un problème de longueur de chaine.

----------------------
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 
 
Poster un nouveau sujet Poster une réponse





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