![]() |
Stopuhr/Laufzeit
Hallo Zusammen
bin eigentlich noch ein anfänger, hoffe aber dass ihr mir helfen könnt! In der Schule nehmen wir Sortier-Algorithmen ducrh. Als Zusatz will ich nun in mein Programm, das 4 Algorithmen umfasst, eine Funktion einbauen, die anzeigt wie lange das Sortieren gedauert hat! Beispielsweise in einem Edit-Feld ausgedruckt wird, oder ein Label sichtbar wird, in dem die Zeit steht. Vielen Dank für eure Hilfe |
Re: Stopuhr/Laufzeit
Nimm eine Variable Zeit, mach vor dem algo ein Zeit := Gettickcount; und am ende sowas wie showmessage (inttostr(GettickCount - zeit));
(in ms) |
Re: Stopuhr/Laufzeit
Sowas hab ich schon versucht!
Mein COde sieht jetzt so aus
Code:
Er zeigt mir "0 ms" an.... !?!
Zeit:=GettickCount;
Quick(links,rechts); Endzeit:=(GettickCount-Zeit); Showmessage(IntToStr(Endzeit)+'ms'); |
Re: Stopuhr/Laufzeit
Vieleicht hast du zuwenige Sachen zum Sortieren ???
|
Re: Stopuhr/Laufzeit
es sind nur 10. ich machs dann halt mal mit 100!
|
Re: Stopuhr/Laufzeit
ist immer noch bei 0 ms! habs jetzt mal mit 100 versucht
|
Re: Stopuhr/Laufzeit
tztztz ... um gute Erfebisse zu bekommen, solltest du das schon so mit min. 10.000 machen ...
Dann erkennst du auch Unterschiede in den Zeiten der versch. Sortieralgos ... |
Re: Stopuhr/Laufzeit
auch bei 100000 immer noch 0!
|
Re: Stopuhr/Laufzeit
:shock: Und er sortiert auch ????
Dann mach ma:
Delphi-Quellcode:
queryperformancecounter (anfang);
// ... queryperformancecounter (ende); queryperformancefrequency (frq); zeit = (ende - anfang) / frq; |
Re: Stopuhr/Laufzeit
probier es mal so:
Delphi-Quellcode:
wir haben das zur Zeit auch in der Schule ;-)
var summe, von, bis:integer;
begin von:=gettickcount; quick (..);//deine Sortierfunktion bis:=gettickcount; summe:=bis-von; LabelZeit:=strtoint(summe)+ 'ms'. end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz