![]() |
Von einem Array den höchsten und niedrigsten Wert ermitteln
Wie kann ich von einem Array den höchsten und niedrigsten Wert ermitteln ?
Problem ist, dass die Variable vom Typ TDatetime ist.
Delphi-Quellcode:
..
. var X: Integer; Daten : Array[0..99] of high_Value, high_Value:TDatetime; . . . low_Value := Daten[x]; high_Value := Daten[x]; |
Re: Von einem Array den höchsten und niedrigsten Wert ermitt
TDateTime ist ein Double, entsprechend kannst du es auch wie/mit Doubles vergleichen. Niedriger ist früher.
|
Re: Von einem Array den höchsten und niedrigsten Wert ermitt
TDateTime ist intern nichts anderes als ein Float - lässt sich also problemlos vergleichen. Geh einfach das array durch und speicher in zwei Variablen den bisher höchsten und niedrigsten Wert und wenn du einen höheren bzw. niedrigeren findest, dann setze diese Variablen auf den.
|
Re: Von einem Array den höchsten und niedrigsten Wert ermitt
Oder man sortiert es einfach. ;)
|
Re: Von einem Array den höchsten und niedrigsten Wert ermitt
...was aber - zumindest bei einmaliger Suche - länger dauert. (Optimale Sortieralgorithmen: O(n log n), der Algorithmus oben: O(n))
|
Re: Von einem Array den höchsten und niedrigsten Wert ermitt
Ich hab das Problem schon gelöst.
Das TDateTime ist tatsächlich ein Float
Delphi-Quellcode:
low_value := Strtotime(tabelle.Form1.StringGrid1.Cells[1,1]);
for j := 1 to X do begin if low_value > Strtotime(tabelle.Form1.StringGrid1.Cells[1,j]) then low_value := Strtotime(tabelle.Form1.StringGrid1.Cells[1,j]); if high_Value < Strtotime(tabelle.Form1.StringGrid1.Cells[1,j]) then high_Value := Strtotime(tabelle.Form1.StringGrid1.Cells[1,j]); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 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 by Thomas Breitkreuz