Aide! |
Auteur |
Message |
Artouille33
Invité
|
Posté le : Mer 14 Mar 2007, 8:33
|
|
|
coment on fait pour faire deplacer automatiquement une lettre san toucher a aucune touche de ma calcu!!!!!!!!
merci de vos reponses
|
|
|
|
Stupid
Autorisation : Membre
Nb de messages : 768
Inscrit le : Jeu 28 Sep 2006, 18:42
|
Posté le : Mer 14 Mar 2007, 13:06
|
|
|
faut une boucle un output
Code | :16[sto]X
:For(A,1,X
:69!:69!:69!:69!
:Output(1,X,"*
:End |
|
|
|
|
webmaster
Autorisation : Administrateur
Nb de messages : 792
Inscrit le : Mer 18 Aoû 2004, 22:13
|
Posté le : Mer 14 Mar 2007, 13:27
|
|
|
A ta place, je mettrai ce code :
Code | :For(A,1,16)
:ClrHome
:Output(1,X,"*")
:69!:69!:69!:69!
:End |
@+ Le Webmaster
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Mer 14 Mar 2007, 13:54
|
|
|
Sinon y'a aussi ce moyen:
Code | 0->Y
Lbl 0
Y+1->Y
Output(1,Y,"*"
Output(1,Y-1," "
If Y=16:Stop
Goto 0 |
Sangohan38
|
|
|
|
Stupid
Autorisation : Membre
Nb de messages : 768
Inscrit le : Jeu 28 Sep 2006, 18:42
|
Posté le : Mer 14 Mar 2007, 17:11
|
|
|
webmatser, c'est bien joli maios il voulait des lettres qui bouge donc y' la mienne et celle de sango qui marche et le sujet est réglé
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Jeu 15 Mar 2007, 13:18
|
|
|
Il s'est tromper dans ses variables: il aurait du utiliser deux fois la même au lieu de mettre deux variables.
Sangohan38
|
|
|
|
PMdej
Autorisation : Membre
Nb de messages : 144
Inscrit le : Mer 07 Mar 2007, 19:10
|
Posté le : Jeu 15 Mar 2007, 18:17
|
|
|
ouais moi aussi j'essaye de le fair !!!
Qulqu'un pourrait m'expliquer ou pas ????
---------------------- BIENVENUE DANS LE MONDE DE LA PROGRAMMATION |
|
|
|
Stupid
Autorisation : Membre
Nb de messages : 768
Inscrit le : Jeu 28 Sep 2006, 18:42
|
Posté le : Jeu 15 Mar 2007, 18:30
|
|
|
tout est écrit...
|
|
|
|
Deeph
Autorisation : Membre
Nb de messages : 40
Inscrit le : Mar 29 Aoû 2006, 23:20
|
Posté le : Sam 17 Mar 2007, 11:41
|
|
|
Y'a encore mieux :
Code | ClrHome
4[->]Y
8[->]X
Repeat K=45
randInt(1,4[->]A
If A=1:Then
If Y[n'égale pas]1:Then:Output(Y,X," ":Y-1[->]Y:End
End
If A=2:Then
If Y[n'égale pas]8:Then:Output(Y,X," ":Y+1[->]Y:End
End
If A=3:Then
If X[n'égale pas]1:Then:Output(Y,X," ":X-1[->]X:End
End
If A=4:Then
If X[n'égale pas]16:Then:Output(Y,X," ":X+1[->]X:End
End
Output(Y,X,"8"
getKey[->]K
End
ClrHome:Output(1,1," ":Stop |
Avec, bien sur, [->] qui correspond à la touche [STO>] de ta TI et [n'égale pas] ce situe dans le menu [TEST] de la TI en appuyant sur [2nd],[MATH]. Pour quitter le programme, tu appui sur [CLEAR].
---------------------- Forum TI z80 |
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Sam 17 Mar 2007, 16:19
|
|
|
Oui mais cette méthode finis par faire bugger la calulette et elle est plus longue à faire que les notres.
Sangohan38
|
|
|
|
Deeph
Autorisation : Membre
Nb de messages : 40
Inscrit le : Mar 29 Aoû 2006, 23:20
|
Posté le : Sam 17 Mar 2007, 16:56
|
|
|
N'importe quoi, met boucles sont parfaitement faites donc il n'y aura pas de 'ERR:MEMORY'. Le code que tu as proposé ne permet que de faire bouger de gauche à droite alors que celui ci permet de faire bouger dans les quatres directions, en prennant en compte les rebords de l'écran (pour ne pas crasher) et de façons aléatoire.
---------------------- Forum TI z80 |
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Sam 17 Mar 2007, 17:54
|
|
|
Les then ralentissent le programme jusqu'a cette erreur.
Cepandant, en enlevant les then et les end, on peut très bien ne plus avoir cette erreur et puis, ton prog peut être modifiable car il n'est compatible qu'à partire de la 82 STATS.
On peut aussi avoir:
Code | Lbl 1
int rand16+1->X
int rand8+1->Y
Output(Y,X,"X
69!
69!
69!
ClrHome
getkey->K
If K=105:Stop
Goto 1 |
Presque le même code que toi mais en plus court.
Sangohan38
|
|
|
|
Deeph
Autorisation : Membre
Nb de messages : 40
Inscrit le : Mar 29 Aoû 2006, 23:20
|
Posté le : Sam 17 Mar 2007, 18:05
|
|
|
Ce sont les 'Goto' qui relentissent énormement les programmes, pas les 'Then'. Et on ne peut enlever les 'Then:[...]:End' qu'a certains moment (losqu'on a qu'une seule chose à éxecuter si la condition est vrai, ce qui n'est pas le cas ici).
Après, pour le rendre compatible TI 82, il suffit de modifier les 'randInt('.
Puis les '69!' dans un programme ça fait pas très propre, idem que le 'ClrHome' pour éffacer un seul caractère (et puis ton code ne rend pas l'impression d'un mouvement, il affiche un truc au hasard à l'écran).
---------------------- Forum TI z80 |
|
|
|
dark_htf
Autorisation : Membre
Nb de messages : 41
Inscrit le : Sam 18 Nov 2006, 13:43
|
Posté le : Sam 17 Mar 2007, 19:02
|
|
|
Non deeph, désolé mais les then ralentissent le programme ; sur un jeu graphique que j'ai crée, j'ai fait un essai avec le then, et sans.
Avec le then le perso bougeait mois vite au cour du temps, puis paf ERR : memoire
Tandis que sans le jeu était fluide et le perso ne ralentissait pas.
voila
dark_htf
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Sam 17 Mar 2007, 19:56
|
|
|
C'est vrai que mon prog affiche aléatoirement un point.
Pour les 69! et le ClrHome, je voit pas du tout en quoi sa fait pas propre dans la mesure où j'aurais pu utiliser d'autres méthodes plus gourmandes en mémoire.
Et pour finir, dans ton prog, certain Then/end ne sont pas obligatoires.
Enfin, si on dit tous que les Then/end ralentissent jusqu'à l'erreur, c'est que c'est vrai.
Sangohan38
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
Deeph
Autorisation : Membre
Nb de messages : 40
Inscrit le : Mar 29 Aoû 2006, 23:20
|
Posté le : Sam 17 Mar 2007, 20:08
|
|
|
C'est vos boucles qui sont mal faites et qui aboutissent à des 'ERR:MEMORY' (cf ici). Je programme depuis plus de 3 ans à peu près sur TI z80 en TI-Basic et je sais bien que les 'Then' n'aboutissent jamais à des erreurs.
dark_htf > Poste ton code, je suis sur de trouver le problème, et ça ne va surement pas vennir des 'Then:[...]:End'...
Sangohan38 > Dans certains jeux, si tu utilise 'ClrHome', tu est obligé de réafficher tout l'écran, ce qui est lent est donc pas très 'propre' dans un programme. Et pour ce qui est du '69!', c'est moche car déjà que le Ti-Basic est lent, c'est encore plus dommage d'avoir à le ralentir (on peut _toujours_ faire autrement).
edit : Essayez de lancer mon prog sur TI (ou VTI) et d'attendre (ou accélérer la vitesse sous VTI), vous verrez qu'il n'y a pas d'erreurs.
---------------------- Forum TI z80 |
|
|
|
Stupid
Autorisation : Membre
Nb de messages : 768
Inscrit le : Jeu 28 Sep 2006, 18:42
|
Posté le : Sam 17 Mar 2007, 20:33
|
|
|
Deeph tu serais pas venu essentiellement pour faire de la pub pour le concours z80???
Tout ralenti tout et donc si des then ne servent à rien ça fait ralentir le prog
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Sam 17 Mar 2007, 20:34
|
|
|
Ca fait des centaines de programmes que j'ai créer sur les 82.
Une z80 et une 82, c'est pas pareil car elle est plus rapide, on affiche un point donc on peut l'effacer avec ClrHome et ensuite, ça fait un ans que je programme donc je sais de quoi je parle.
Sangohan38
|
|
|
|
Stupid
Autorisation : Membre
Nb de messages : 768
Inscrit le : Jeu 28 Sep 2006, 18:42
|
Posté le : Sam 17 Mar 2007, 20:35
|
|
|
une battle de pro-grammeurs???
|
|
|
|
Deeph
Autorisation : Membre
Nb de messages : 40
Inscrit le : Mar 29 Aoû 2006, 23:20
|
Posté le : Sam 17 Mar 2007, 20:44
|
|
|
Baby Ike > Nan, tout le monde à des adresses dans ses signatures donc pourquoi pas moi ? Et pour le 'Tout ralenti tout' c'est faux, car la TI ne lis que la condition 'If [...]', et elle lis le bloc suivant (donc entre 'If' et 'End') que si la condition est vérifiée. En gros lorsqu'on éxecute un truc le 'Then:[...]:End' ne sert qu'a délimiter les fonctions par rapport à la condition.
Sangohan38 > Le terme 'Ti z80' regroupe les TI 82/83(+)/84(+)/Silver Edition/85/86. Les processeurs 82 et la 83 (celle ou j'ai fait ce prog, donc), sont tout deux cadencés à 6MHz, donc il n'y a pas de différence au niveau de la vitesse d'éxecution... Après tu utilise un 'ClrHome' si tu veux, je te donne juste un conseil.
---------------------- Forum TI z80 |
|
|
|