Derniers sujets | » Numbers par Ver2guerre Dim 02 Avr 2023, 00:47
» Mort ? par godbod Dim 22 Aoû 2021, 12:23
» Network, essai 1 par godbod Dim 09 Juil 2017, 02:18
» GODBOD par godbod Sam 08 Juil 2017, 14:05
» mon humeur par Ver2guerre Sam 30 Juil 2016, 19:44
» [A voir] Programme de traduction original : WikiTranslate par AdRiWeB Lun 01 Fév 2016, 04:50
» Reprise ? par Emyl Jeu 14 Juin 2012, 21:17
» Euh, ah ? par Ver2guerre Dim 27 Mai 2012, 12:11
» Problème TI 89 Titanium non visible après mise à jour par abdoukid Mer 23 Mai 2012, 13:37
» Y'a quelqu'un ? par Ver2guerre Sam 21 Avr 2012, 23:10
|
Qui est en ligne ? | Il y a en tout 3 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 3 Invités :: 2 Moteurs de recherche Aucun Le record du nombre d'utilisateurs en ligne est de 367 le Dim 18 Oct 2009, 00:16 |
| | |
Auteur | Message |
---|
AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Optimisations ... Jeu 03 Jan 2008, 23:47 | |
| Je vais prochainement poster ici les codes/algos/routines pour que vous puissiez me dire ce que vous en pensez et surtout savoir quelles optimisations il serait préférable de faire.
Voilà !
(vous inquiétez pas, ça va venir) |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Jeu 03 Jan 2008, 23:54 | |
| Voilà le code de la routine qui exporte la musique vers le langage Omnicalc Il y a une GROSSE optimisation du code à faire, enfin regardez par vous-même ^^ : Le Ø, c'est une variable comme une autre. - Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø If iPart(LMUS01(Ø))=20 Str1+"C->Str1 If iPart(LMUS01(Ø))=22 Str1+"D->Str1 If iPart(LMUS01(Ø))=24 Str1+"E->Str1 If iPart(LMUS01(Ø))=26 Str1+"F->Str1 If iPart(LMUS01(Ø))=28 Str1+"G->Str1 If iPart(LMUS01(Ø))=30 Str1+"<A>->Str1 If iPart(LMUS01(Ø))=32 Str1+"<B>->Str1 If iPart(LMUS01(Ø))=34 Str1+"<C>->Str1 If iPart(LMUS01(Ø))=36 Str1+"<D>->Str1 If iPart(LMUS01(Ø))=38 Str1+"<E>->Str1 If iPart(LMUS01(Ø))=40 Str1+"<F>->Str1 If iPart(LMUS01(Ø))=42 Str1+"<G>->Str1 If iPart(LMUS01(Ø))=44 Str1+"<<A>>->Str1 End Pause Str1 Return Comme vous avez pu le remarquer, le code est TRES répétitif, donc bon, j'ai pensé à une bonne boucle for avec un sub() (instring() peut être ? non j'pense pas) pour à chaque fois extraire la bonne lettre. Proposez vos idées ! |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 00:01 | |
| déjà tu peux inverser : If 20=... ... If 22=...
ça te fera économiser des octets pour les parenthèses de fin après il va falloir trouver un code pour extraire le bon truc mais je l'ai pas là |
| | | Syfo Pokémophile
Nombre de messages : 1978 Age : 33 Localisation : IYA items :
Personalized field : 26 jetons Réputation : 8 Points : 6904 Date d'inscription : 09/08/2007
Profil TI: 80, 82, 83, 83+, 84+ TO: 2 945 [GAIN * 1.1] Spécialité: Basic z80
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 13:30 | |
| - Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø If iPart(LMUS01(Ø))=20 Str1+"C->Str1 If iPart(LMUS01(Ø))=22 Str1+"D->Str1 If iPart(LMUS01(Ø))=24 Str1+"E->Str1 If iPart(LMUS01(Ø))=26 Str1+"F->Str1 If iPart(LMUS01(Ø))=28 Str1+"G->Str1 If iPart(LMUS01(Ø))=30 Str1+"<A>->Str1 If iPart(LMUS01(Ø))=32 Str1+"<B>->Str1 If iPart(LMUS01(Ø))=34 Str1+"<C>->Str1 If iPart(LMUS01(Ø))=36 Str1+"<D>->Str1 If iPart(LMUS01(Ø))=38 Str1+"<E>->Str1 If iPart(LMUS01(Ø))=40 Str1+"<F>->Str1 If iPart(LMUS01(Ø))=42 Str1+"<G>->Str1 If iPart(LMUS01(Ø))=44 Str1+"<<A>>->Str1 End Pause Str1 Return hmmm... Attends que je reflechisse... Deja: (j'appelle ton truc suedois O ce sera plus simple) - Code:
-
...
For(O,1,A Output(3,1,O For(Z,10,14 If Z=ipart(LMUS01(O))/2 Str1+sub("CDEFG",Z-9,1)->Str1 End
...
End Heu... Au fait, il n'y a pas 5 caracteres max pour le nom d'une liste? La tienne en fait 6 si je ne m'abuse, mais c'est pas tres important. Ensuite, dans les trois petits points de la fin tu peux mettre: - Code:
-
For(Z,15,20 If Z=ipart(LMUS01(O))/2 Str1+sub("<A><B><C><D><E><F><G>",3(Z-14)-2,3)->Str1 End If 44=ipart(LMUS01(O Str1+"<<A>>"->Str1
Ce qui au final donne: - Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø For(Z,10,14 If Z=ipart(LMUS01(O))/2 Str1+sub("CDEFG",Z-9,1)->Str1 End For(Z,15,20 If Z=ipart(LMUS01(O))/2 Str1+sub("<A><B><C><D><E><F><G>",3(Z-14)-2,3)->Str1 End If 44=ipart(LMUS01(O Str1+"<<A>>"->Str1 End Pause Str1 Return Y a des parentheses/guillemets a enlever (je les ai laisse pour la clarte), mais en fait je suis pas sur que tu y gagnes avec mon optimisation. A verifier. Edit: en voyant le resultat, je peux confirmer que tu y gagnes. |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 14:25 | |
| oui merci beaucoup à vous deux ! je teste ça PS : non, mon nom de liste est MUS01, le L, c'est le petit L ^^ |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 14:31 | |
| alors, résultat, c'est un tout petit peu pus long, mais en même temsp c'est sur une 83+ que j'ai testé, donc à mon avis c'est pareil. Vu que c'est moins long, j'vous remercie, surtout Syfo C'est à cette technique que j'pensais thx again ^^ |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 15:01 | |
| - Syfo a écrit:
Ce qui au final donne:
- Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø For(Z,10,14 If Z=ipart(LMUS01(O))/2 Str1+sub("CDEFG",Z-9,1)->Str1 End For(Z,15,20 If Z=ipart(LMUS01(O))/2 Str1+sub("<A><B><C><D><E><F><G>",3(Z-14)-2,3)->Str1 End If 44=ipart(LMUS01(O Str1+"<<A>>"->Str1 End Pause Str1 Return Y a des parentheses/guillemets a enlever (je les ai laisse pour la clarte), mais en fait je suis pas sur que tu y gagnes avec mon optimisation. A verifier.
Edit: en voyant le resultat, je peux confirmer que tu y gagnes.
Je dirais même : - Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø For(Z,10,14 If Z=.5ipart(LMUS01(O Str1+sub("CDEFG",Z-9,1->Str1 End For(Z,15,20 If Z=.5ipart(LMUS01(O Str1+sub("<A><B><C><D><E><F><G>",3(Z-14)-2,3->Str1 End If 44=ipart(LMUS01(O Str1+"<<A>>->Str1 End Pause Str1 Return
remplacé les ipart(...))/2 par .5ipart(.... parce que la multiplication est plus rapide que la division et ça permet d'enlever les parenthèses inutiles à la fin et j'ai enlevé quelques guillemets/parenthèses qui étaient superflus EDIT : les balises passent pas...c'est corrigé. |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 15:13 | |
| gmmm c'est vrai que .5, j'ai pas trop l'habitude ^^ merci ! le projet avance vite ... |
| | | Syfo Pokémophile
Nombre de messages : 1978 Age : 33 Localisation : IYA items :
Personalized field : 26 jetons Réputation : 8 Points : 6904 Date d'inscription : 09/08/2007
Profil TI: 80, 82, 83, 83+, 84+ TO: 2 945 [GAIN * 1.1] Spécialité: Basic z80
| Sujet: Re: Optimisations ... Ven 04 Jan 2008, 21:04 | |
| Ouiiii!! Je cherchais ce foutu .5, je l'avais sur le bout de la langue (ou plutot du doigt), mais j'arrivais pas a retrouver. Merci. |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 10:43 | |
| C'est vraiment génial, ce truc, c'est plus rapide et ça peut éliminer des paranthèses finales, rhooo ^^ c'est gg ça ^^ |
| | | Syfo Pokémophile
Nombre de messages : 1978 Age : 33 Localisation : IYA items :
Personalized field : 26 jetons Réputation : 8 Points : 6904 Date d'inscription : 09/08/2007
Profil TI: 80, 82, 83, 83+, 84+ TO: 2 945 [GAIN * 1.1] Spécialité: Basic z80
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 13:34 | |
| J'ai du faire face a un probleme de ce type hier soir en programmant un bout de code pour EoE. Je pense qu'on peux y gagner un peu en faisant ainsi (par contre j'ai essaye de melanger syntaxe booleenne et string, ca ne marche pas, dommage): - Code:
-
"T180->Str1 Float ClrHome Disp "CONVERSION...","",""," dim(LMUS01->A Output(3,3,"/ Output(3,5,A For(Ø,1,A Output(3,1,Ø For(Z,10,21 If Z<15:Then If Z=.5ipart(LMUS01(O Str1+sub("CDEFG",Z-9,1->Str1 Else If 44=ipart(LMUS01(O Then Str1+"<<A>>->Str1 Else If Z=.5ipart(LMUS01(O Str1+sub("<A><B><C><D><E><F><G>",3(Z-14)-2,3->Str1 End End End Pause Str1 Return
|
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 16:23 | |
| un truc stupide : - Citation :
If Z<15:Then
en faisant - Code:
-
If Z<15 Then
On économise 1 octet, mais bon ça change quasiment rien |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 18:44 | |
| ben lol on le sait ça ^^
oui, sinon, syfo, j'ai tenté aussi pour faire les 2 en même temps (avec les booléens) |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 18:55 | |
| c'est pas possible là de faire les booléens |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 19:37 | |
| non mais avant, si, je crois |
| | | Syfo Pokémophile
Nombre de messages : 1978 Age : 33 Localisation : IYA items :
Personalized field : 26 jetons Réputation : 8 Points : 6904 Date d'inscription : 09/08/2007
Profil TI: 80, 82, 83, 83+, 84+ TO: 2 945 [GAIN * 1.1] Spécialité: Basic z80
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 21:37 | |
| - tama a écrit:
- un truc stupide :
- Citation :
If Z<15:Then
en faisant - Code:
-
If Z<15 Then
On économise 1 octet, mais bon ça change quasiment rien Oui mais non. En fait, le ':' equivaut a un retour a la ligne, et le poids d'un retour a la ligne est de 1 octet. Je viens de faire au cas ou, je suis sur de ce que j'affirme. Adriweb: On ne melange pas booleens et strings, quelque soit le cas, j'ai verifie. |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Sam 05 Jan 2008, 21:45 | |
| |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Dim 06 Jan 2008, 14:31 | |
| ah bon ?
okok ^^
j'ai cru pourtant avoir vu quelque part ...
bref ^^ |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Dim 06 Jan 2008, 14:42 | |
| Mais le ":" qui se met à chaque début de ligne ne fait-il pas aussi 1 octet ?
EDIT : ah non, j'ai rien dit |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Lun 07 Jan 2008, 20:26 | |
| non lol sinon bonjour le bor**l xD |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Lun 07 Jan 2008, 20:28 | |
| mais ça marche que pour 1 seul ":" ? je veux dire, If Z=1:Then:Disp "z=1":End Ca prend 2 octets de plus que If Z=1 Then Disp "Z=1" End
? |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Mar 08 Jan 2008, 11:31 | |
| je crois que non, pourtant ... |
| | | Syfo Pokémophile
Nombre de messages : 1978 Age : 33 Localisation : IYA items :
Personalized field : 26 jetons Réputation : 8 Points : 6904 Date d'inscription : 09/08/2007
Profil TI: 80, 82, 83, 83+, 84+ TO: 2 945 [GAIN * 1.1] Spécialité: Basic z80
| Sujet: Re: Optimisations ... Mar 08 Jan 2008, 21:13 | |
| Je confirme que non. C'est exactement le meme poids. Ce qui permet par exemple de grouper les 'End' (moi a un moment j'en ai 12 de suite, ben 12 lignes ca ferait long) |
| | | tama Admin
Nombre de messages : 12376 Age : 33 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9582 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Optimisations ... Mar 08 Jan 2008, 22:20 | |
| |
| | | AdRiWeB amis
Nombre de messages : 3655 Age : 32 Localisation : Juste sous mes cheveux Loisirs : Internet, programmation, TI, musique, tennis-de-table ... Humeur : ^^ items : o Personalized field : Réputation : 0 Points : 6423 Date d'inscription : 12/08/2007
Profil TI: TI-84 Plus, nspire CAS TO: 2429 {2} Spécialité: Basic z80
| Sujet: Re: Optimisations ... Mer 09 Jan 2008, 15:21 | |
| - Syfo a écrit:
- (moi a un moment j'en ai 12 de suite, ben 12 lignes ca ferait long)
mon maximum a été de 5 ^^ 12 oO ^^ |
| | | Contenu sponsorisé
| Sujet: Re: Optimisations ... | |
| |
| | | |
Page 1 sur 2 | Aller à la page : 1, 2 | |
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
|
|