Questo topic e' stato chiuso dal moderatore.
12/11/11 18:24
Aangelus
Salve ho eseguito un controllo su due versioni di lettura file txt cronometrandone la velocità dell'algoritmo. Il risultato è stato diverso da quello che mi aspettavo, nel senso che hanno impiegato lo stesso tempo di realizzazione e mi domandavo se avessi sbagliato qualcosa ?
il timer è impostato a 1000
Private Sub Command1_Click()
Text1.Text = ""
starttime = Timer
Open "c:\tmp\" & nomefile For Input As #1
Text1.Text = Input(LOF(1), #1)
Close #1
Label1.Caption = Timer - starttime
end sub
Private Sub Command2_Click()
Text1.Text = ""
starttime2 = Timer
Open "c:\tmp\" & nomefile For Input As #1
Do While Not EOF(1)
Line Input #1, testomio
testocompletomio = testocompletomio + vbCrLf + testomio
Loop
Close #1
Text1.Text = testocompletomio
Label2.Caption = Timer - starttime2
End Sub
Mi sono posto questo quesito perché secondo me si dà poca attenzione alla velocità degli algoritmi in particolare modo a progetti più grandi dove la scelta di quello giusto determina la velocità di risposta, per esempio nell'elaborazione di molto testo
Salve a tutti
Ho eseguito una modifica che ha confermato quello che in un primo momento si era manifestato come una anomalia aggiungendo un ciclo di ripetizioni con for, il primo algoritmo ha impiegato circa 6 volte meno del secondo confermando che la scelta di quello giusto è importante
Private Sub Command1_Click()
Text1.Text = ""
starttime = Timer
For i = 1 To 1000
contenuto = ""
nomefile = Dir$("c:\tmp\"
Open "c:\tmp\" & nomefile For Input As #1
contenuto = Input(LOF(1), #1)
Close #1
Next i
Text1.Text = contenuto
Label1.Caption = Timer - starttime
End Sub
Private Sub Command2_Click()
Text1.Text = ""
starttime2 = Timer
For z = 1 To 1000
testocompletomio = ""
nomefile = Dir$("c:\tmp\"
Open "c:\tmp\" & nomefile For Input As #1
Do While Not EOF(1)
Line Input #1, testomio
testocompletomio = testocompletomio + vbCrLf + testomio
Loop
Close #1
Next z
Text1.Text = testocompletomio
Label2.Caption = Timer - starttime2
End Sub
Spero che questo post possa essere motivo di discussioni costruttive
Salve a tutti
il timer è impostato a 1000
Private Sub Command1_Click()
Text1.Text = ""
starttime = Timer
Open "c:\tmp\" & nomefile For Input As #1
Text1.Text = Input(LOF(1), #1)
Close #1
Label1.Caption = Timer - starttime
end sub
Private Sub Command2_Click()
Text1.Text = ""
starttime2 = Timer
Open "c:\tmp\" & nomefile For Input As #1
Do While Not EOF(1)
Line Input #1, testomio
testocompletomio = testocompletomio + vbCrLf + testomio
Loop
Close #1
Text1.Text = testocompletomio
Label2.Caption = Timer - starttime2
End Sub
Mi sono posto questo quesito perché secondo me si dà poca attenzione alla velocità degli algoritmi in particolare modo a progetti più grandi dove la scelta di quello giusto determina la velocità di risposta, per esempio nell'elaborazione di molto testo
Salve a tutti
Ho eseguito una modifica che ha confermato quello che in un primo momento si era manifestato come una anomalia aggiungendo un ciclo di ripetizioni con for, il primo algoritmo ha impiegato circa 6 volte meno del secondo confermando che la scelta di quello giusto è importante
Private Sub Command1_Click()
Text1.Text = ""
starttime = Timer
For i = 1 To 1000
contenuto = ""
nomefile = Dir$("c:\tmp\"
Open "c:\tmp\" & nomefile For Input As #1
contenuto = Input(LOF(1), #1)
Close #1
Next i
Text1.Text = contenuto
Label1.Caption = Timer - starttime
End Sub
Private Sub Command2_Click()
Text1.Text = ""
starttime2 = Timer
For z = 1 To 1000
testocompletomio = ""
nomefile = Dir$("c:\tmp\"
Open "c:\tmp\" & nomefile For Input As #1
Do While Not EOF(1)
Line Input #1, testomio
testocompletomio = testocompletomio + vbCrLf + testomio
Loop
Close #1
Next z
Text1.Text = testocompletomio
Label2.Caption = Timer - starttime2
End Sub
Spero che questo post possa essere motivo di discussioni costruttive
Salve a tutti
Ultima modifica effettuata da Aangelus 12/11/11 18:57
aaa