Einführung imperative Programmierung – Einsendeaufgabe 2 Aufgabe 2

In der zweiten praktischen Aufgabe der Einsendaufgabe 2 soll das Programm „merge“ geschrieben werden, welches zwei aufsteigend sortierte Felder von nicht unbedingt unterschiedlichen integer-Zahlen zu einem sortierten Feld zusammenfasst und ausgibt. Die Größe der beiden Zahlenfolgen ist außerdem bereits begrenzt. Mehrfach vorhandene Zahlen sollen auch im Ergebis doppelt vorkommen. Die beiden Felder werden nacheinenander mit „readln“ eingelesen, wobei das Programm davon ausgehen soll, dass bereits sortierte Zahlenfolgen eingegeben werden.

Das Beispiel der Aufgabenstellung:

Feld1: 11, 14, 18, 80, 100

Feld2: 8, 11, 11, 17, 22, 30, 55, 70

Ausgabe-Feld nach Programmdurchlauf: 8, 11, 11, 11, 14, 17, 18, 22, 30, 55, 70, 80, 100

Es soll bei der Lösung kein Sortier-Algorithmus entwickelt werden, sondern die bestehende Sortierung der vorhandenen Felder genutzt werden. Ansonsten wäre die Aufgabe einfacher zu lösen gewesen, denn dann hätte man einfach beide Felder in eins zusammenfassen und dann erst sortieren können. Durch die Einschränkung muss am Ende der Rest des Feldes, welches eventuell noch Werte enthält, an das neu erstellte Feld einfach nur moch angehangen werden.

Für diese Aufgabe war der Großteil des Programms bereits in der Aufgabenstellung vorgegeben (Programmkopf, Variablen und Konstanten, die Ausgabe, etc.), sodass man nur noch die Ermittlung der Ergebniszeile bzw. das Mergen der Felder selber umsetzen muss. Den Anfang und das Ende meiner Lösung habe ich in meinem Code angegeben:

 

 

Tobias Langner

Tobias Langner

Ich arbeite seit mehreren Jahren als Software-Release-Manager, zuvor als IT-Administrator, bin ausgebildeter Fachinformatiker für Systemintegration und Studium-"Pausierer" an der FernUni Hagen. Achtung: Für die Richtigkeit der zur Verfügung gestellten Informationen, Skripte, etc. übernehme ich keine Gewähr. Deren Nutzung geschieht ausdrücklich auf eigene Gefahr!

Alle Beiträge ansehen von Tobias Langner →

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert