für eine Weiterbildung muss ich ein Programm in ABAP reaslisieren welches ich über einen BubbleSort abwickeln soll laut Aufgabenstellung. Es sollen hier zehn Zahlen der grösse nach ausgegeben werden. Würde mich über Eure Hilfe und Antworten freuen Danke.
TheHEIIRAISER hat geschrieben:Eure Hilfe und Antworten freuen Danke.
eazyenno hat wenigstens noch eine halbwegs konkrete Frage gestellt.
Du willst einfach nur, dass jemand anders Deine Hausaufgaben macht?
Wann ist denn der Abgabetermin?
Such doch einfach mal bei Google nach Bubblesort, Beispielcode gibbet für den Algorithmus ja genug. Wenn dann bei der Umsetzung in ABAP Probleme auftreten, kann dir hier sicher weitergeholfen werden...
Also alles vorkauen tun wir nicht, aber eine kleine Hilfe, wie BubbleSort generell funktioniert.
Idee ist:
a) Nimm die erste Zahl aus der Zahlenreihe. Speichere sie als (vorläufig) kleinste Zahl.
b) Gehe die Zahlenreihe dann solange weiter durch, bis du auf eine Zahl stößt, die KLEINER ist als die Zahl aus a).
c) Die gefundene kleinere Zahl wird nun in den Speicherplatz aus a) geschoben und ist somit (vorläufig) die kleinste Zahl.
d) Fahre mit b) solange fort, bis entweder c) erneut eintritt oder die Zahlenreihe zu Ende ist. In diesem Fall (Ende der Zahlenreihe) hast du die kleinste Zahl gefunden. Fahre dann mit den verbliebenen Zahlen fort. Beginne erneut bei a). Du suchst nun die ZWEITkleinste Zahl. Im dritten Durchlauf die DRITTkleinste etc.
Alles klar?
Nein? Beispiel:
Zahlenreihe (nur drei Zahlen):
4 6 2
Erster Lauf:
a) Speichere 4 in "kleinste Zahl" (variable KZ)
b) Nimm die nächste Zahl: 6.
Ist die kleiner als die Zahl, die in KZ steht?
Nein--> weiter
Nächste Zahl ist 2.
Ist die kleiner als die Zahl, die in KZ steht?
c) Ja --> Speichere 2 in KZ.
d) Ende der Reihe: Kleinste Zahl ist gefunden.
==========================
Zweiter Lauf:
(es sind noch die Zahlen 4 und 6 übrig).
a) Speichere 4 in "zweitkleinste Zahl" (variable ZKZ)
b) Nimm die nächste Zahl: 6.
Ist die kleiner als die Zahl, die in KZ steht?
Nein--> weiter
c) entfällt
d) Ende der Reihe: Zweitkleinste Zahl ist gefunden.