Zur Kenntnis genommen. Jedoch ist es (fast) egal, wie lange du dich bereits mit Delphi beschäftigst.
Das grundlegende Problem das ich hier sehe ist nicht, dass du keine Erfahrung mit Delphi hast, sondern die Art und Weise, wie du versuchst das Problem zu lösen.
In deinem Eingangspost zeigst du ein paar Zahlen und willst eine Lösung haben, ohne zu sagen, was das zu lösende Problem ist und ohne zu erklären, wie die Zahlen zustande kommen. Erst nach einigem Herumgerätsele der Leute hier kommt irgendwann heraus, dass die jeweils größten und kleinsten Kombinationen der gegebenen Ziffern miteinander zu verrechnen sind.
Das steht dann aber im Widerspruch zu deinem Beispiel am Anfang.
Dann schaffst du es nicht, klar auszudrücken, wo genau du Probleme hast, sondern postest Quelltexte mit dem Kommentar "geht nicht".
Und weil das noch nicht genug ist, machst du in einem anderen Forum einen Thread wegen dem gleichen Problem auf und erklärst dort (aber nicht hier. Warum eigentlich?), dass du gar keine Delphi Entwicklungsumgebung hast, d.h. du schreibst alles in Notepad o.ä. und hoffst, dass irgendwann ein brauchbarer Code herauskommt, den du aber nie testen kannst.
Ich weiss nicht wie du dir das vorstellst, aber für mein Verständnis ist dein Problem so nicht lösbar.
Nicht weil es dir an Delphi-Wissen mangelt, sondern weil deine Vorgehensweise sich irgendwo zwischen konfus und unlogisch einordnen lässt.
In der Delphi-Praxis wurde dir (wie auch hier) ein Leitfaden gezeigt, wie du vorgehen könntest.
Ich sehe aber nicht, dass du hier zielführend konkrete Fragen dazu gestellt hast, wie du die einzelnen Punkte abarbeiten kannst - wobei das noch nicht einmal nötig ist, schliesslich finden sich Beispiele für derartige Basics in jedem guten Einsteigerhandbuch oder in der Forensuche.
Dem guten Willen wegen nochmal: Der wohl einfachste Weg das alles umzusetzen:
Pseudocode
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
|
Lese Eingabe in String s Integer z = s Integer a, b, z_alt
wiederhole > z_alt = z s = z Sortiere s a = s Invertiere s b = s z = a - b < solange z <> z_alt |
Der (Um-)Weg über einen String hat meine Meinung nach den Vorteil, dass hier das Invertieren bereits in den StrUtils definiert ist und die Umwandlung in einen Integer einfacher ist, als aus einem array of int heraus. Aber es geht ja hier nicht um "schick und toll" machen, sondern nur um die generelle Machbarkeit...
PS: Du hast einige Fragen noch nicht beantwortet. Z.B. seit wann diese Aufgabe überhaupt steht...
Noch ein PS: Wenn es dir an einer Delphi-Entwicklungsumgebung mangelt, möchte ich dich an
www.amazon.de verweisen. Dort gibt es Bücher (z.B:
www.amazon.de/Delphi...19056707&sr=8-1), denen eine Delphi Vollversion beiliegt. Darüber hinaus enthalten diese Bücher viel Wissen in gedruckter Form, das sich bei der Programmierung als sehr hilfreich herausstellen mag.