Quel est le plus rapide ? le do ... loop ou tout a la suite ?

adess00 Messages postés 261 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 27 septembre 2008 - 27 juil. 2005 à 16:57
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 27 juil. 2005 à 18:48
Salut je test 13 millions de combinaisonet je voudrai savoir laquelle de ces methodes est la plus rapide

num(1).Text = CStr(ch1)
num(2).Text = CStr(ch2)
num(3).Text = CStr(ch3)
num(4).Text = CStr(ch4)
num(5).Text = CStr(ch5)
num(6).Text = CStr(ch6)

ou

for a=1 to 6
num(a).Text = CStr(ch(a))
next a

ou encore un do loop

merci de vos reponses !

7 réponses

thefada Messages postés 65 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 25 janvier 2008
27 juil. 2005 à 17:05
le plus rapide est certainement de diminuer le nombre de combinaisons :p
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
27 juil. 2005 à 17:22
num(1) ...blablabla à 6, à la suite, prend 0,1559ms (environ)
for ...CStr(chR(a)).. blabla prend 0,1875ms


j'ai fait un timer BenchMarck, posté ici. utilise le en compilé pour ce genre de test ;)

Private Sub Command1_Click()
AfTimer1.TypeTimer = BenchMark
AfTimer1.Enabled = True
For a = 1 To 6
num(a).Text = CStr(Chr(a))
Next a
AfTimer1.Enabled = False
MsgBox AfTimer1.Value
End Sub

fais le test plusieurs fois pour avoir une idée plus juste....

PCPT
0
adess00 Messages postés 261 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 27 septembre 2008
27 juil. 2005 à 17:34
thefada m ont but est de reduire le nombre de combinaison mais c justement ce ke fait mon prog je vai pas le reduire en claquant des doights et puis je fait 200 000 combinaisons par secondes alors ce me prend qu une petite minute de toutes les lister

En faite, j aurai voulu savoir lekelle est le plus rapide d apres leur fonctionnement
Je ne c pas si le do loop fait plus d aller retour dans les adresses memoires que les autres methodes
les tests je peut les faire ;)
merci quand meme
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
27 juil. 2005 à 18:07
bah si tu peux faire les tests, tu veux quoi, qu'on les fasse pour toi?!!
fait ta boucle, fait tes tests, et compare.

je te donne un exemple concret, et un outil pour faire les tests. tu sais déjà maintenant que sur un petit exemple, le For est plus long que tout à la suite. c'est vrai que remplacer "6" par "60", çà doit pas être facile....

PCPT
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
adess00 Messages postés 261 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 27 septembre 2008
27 juil. 2005 à 18:21
Ce que je veut savoir c comment fonctionne ces fonctions !
J ai pas le droit d apprendre ?


...
Jai deja fait les tests et avec une boucle je tourne a 160 000 combi/s alors que si je met tout a la suite je suis a 200 000 et je veut comprendre pourquoi
Enfin bon
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
27 juil. 2005 à 18:46
"Salut je test 13 millions de combinaisonet je voudrai savoir laquelle de ces methodes est la plus rapide"

dans ce cas, formule mieux ta question

tout à la ligne
> 3 lignes 3 lectures

for i=0 to 3
action
next i
> i0
action
i=i+1
test condition
action
i=i+1
test condition
actioni=i+1
test condition
sortie
= 11 lectures

c'est pas plus compliqué

PCPT
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
27 juil. 2005 à 18:48
12*
...
0