Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Optimiser les boucles de Str ?
Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Optimiser les boucles de Str ?

Posté le 30/05/2014 19:26

Salut à tous !

J'ai un problème j'ai un programme ressemblant à ceci :

[b][blue]Do[/blue][/b]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]1[/maroon],Str [maroon]1[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]2[/maroon],Str [maroon]2[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]3[/maroon],Str [maroon]3[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]4[/maroon],Str [maroon]4[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]5[/maroon],Str [maroon]5[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]6[/maroon],Str [maroon]6[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],[maroon]7[/maroon],Str [maroon]7[/maroon]
[b][blue]LpWhile[/blue][/b] [maroon]1[/maroon]


Et c'est assez lent, j'ai essayé quelque chose comme ça :

[b][blue]Do[/blue][/b]
[b][blue]For[/blue][/b] [maroon]1[/maroon][b]->[/b]X [b][blue]To[/blue][/b] [maroon]7[/maroon]
[b][brown]Locate[/brown][/b] [maroon]1[/maroon],X, Str X
[b][blue]Next[/blue][/b]
[b][blue]LpWhile[/blue][/b] [maroon]1[/maroon]


Mais il n'apprécie pas trop le Str X... Quelqu'un aurait-il un solution pour que ça aille pus vite ?

Merci


Lephenixnoir En ligne Administrateur Points: 24232 Défis: 170 Message

Citer : Posté le 30/05/2014 19:29 | #


Malheureusement non... ou du moins pas à ma connaissance.
Str attend un entier de 1 à 6 en argument.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Nemhardy Hors ligne Grand maître des Traits d'Esprit Points: 1242 Défis: 54 Message

Citer : Posté le 30/05/2014 19:30 | #


Faire 7 locate ne sera pas plus rapide que faire... 7 locate :p.
Sinon, ensuite, je ne vois pas trop quoi faire d'autre pour gagner en vitesse... :-/
Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Citer : Posté le 30/05/2014 19:31 | #


Oui pardon je parlais plus en taille de programme

Et au fait existe-t-il une fonction capable de mélanger les caractères d'une Str ?
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 30/05/2014 19:35 | #


Si tous les Str ont une taille précise, tu peux toujours les stocker tous dans un et afficher une sous partie à chaque ligne
Lephenixnoir En ligne Administrateur Points: 24232 Défis: 170 Message

Citer : Posté le 30/05/2014 19:41 | #


Une sorte de shuffle... je ne crois pas qu'il y ait de fonction pour ça.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 30/05/2014 19:49 | #


Sachant qu'une ligne fait au maximum 21 caractères et que tu ne peux afficher que 7 lignes en mode locate, tu peux alors tout stocker dans une seule chaine (21*7 = 147) (à condition de ne pas utiliser trop de caractères spéciaux de 2 bits).

Dans ce cas, cela donnerait :
For 1->X To 7
Locate 1,X,StrMid(Str 1,21X-20,21)
Next

Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Citer : Posté le 30/05/2014 19:53 | #


Merci beaucoup ! Mais pour mon programme c'est bien plus rapide qu'il y ait une Str pour chaque chaine

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 97 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd