Forum: Algorithmen, Datenstrukturen und Klassendesign
FreePascal
by hoika,
8. Mär 2018
Hallo,
Wo liegt denn dann der Fehler?
Das musst Du doch selber schnell herausfinden.
Für mich ist Deine Berechnung jedenfalls zu kompliziert...
Forum: Algorithmen, Datenstrukturen und Klassendesign
FreePascal
by hoika,
8. Mär 2018
Hallo,
for i:=0 to high(numbers)-1 do
begin
for k:=i+1 to high(numbers) do
begin
if numbers>numbers then
// Tausche
Forum: Algorithmen, Datenstrukturen und Klassendesign
FreePascal
by hoika,
7. Mär 2018
Hallo,
ich würde das ganz pragmatisch angehen.
Schreibe Dir eine Compare-Methode.
Parameter sind 2 Integer-Werte, Ergebnis -1, 0, +1.
Dort definierst Du Deine Sortierkriterien:
Beide negativ oder beide positiv: vergleiche Abs-Werte
andernfalls: es reicht der direkte Vergleich
Das Rausziehen in eine eigene Compare-Methode macht es übersichtlicher.