Autor Beitrag
pwsolaris
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 71
Erhaltene Danke: 1

MS DOS, Win 95, Win 98, Win ME, Win XP, Win Vista, Win 7 Ultimate
Delphi 5 Enterp., Delphi 2007, Delphi 2009, Informix 4GL, VB .NET, MS/SQL, PL/SQL
BeitragVerfasst: Di 25.10.11 09:16 
Hallo,

ich habe folgendes Problem:

Ich habe eine Stringlist mit folgendem Inhalt (Im System hinterlegt):
Wert1;Wert2;Wert3
'-50.79;800;2414'
'-32,79;850;2518'
'-12.68;900;2692'
'0.00;1000;2807'
'12.82;1050;2896'
...
'211.34;1800;3950'
usw....

Es handelt sich hierbei um eine nicht lineare Temperaturkurve.

Der Anwender hat über eine zweispaltige Tabelle die Möglichkeit, eigene Kurve einzutragen. Er gibt also seinen Wert1 und Wert2 ein und es sollen nun in der Tabelle die entsprechenden Werte (oder der Wert, der dem eingegebenen am nächsten kommt)gesucht werden.

Kleines Beispiel:
Benutzer gibt ein:
Wert1: 10
Wert2: 1050

Der korrekte Eintrag für die eingegebenen Werte ist '12.82;1050;2896'
da die 10 dem Wert1 hier am nächsten kommt.

Leider stehe ich hierbei gerade total auf dem Schlauch und habe keine Ahnung, wie ich den richtigen Eintrag aus der Liste ermitteln soll...

Vielleicht kann mir ja einer von euch ein paar Denkanstöße geben.
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Di 25.10.11 09:42 
Die Liste Sortieren (vorzugsweise nicht als Stringlist sondern als Array of Record (3 Floats?))
was würd eigentlich kommen bei:
5.00 ; 1000 >> 2807 oder 2896
welcher der Parameter ist führend bzw. wie ist die Beziehung zwischen den Parametern ...
lassen sie die "exakten Werte" uas den gegebenen möglicherweise interpolieren ....

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS