soll ein sehr einfaches Verfahren, der Selection Sort programmiert

Werbung
Prof. Dr. H. Weber
Praktikum Programmieren 1 in C, WS 2004/05
Übungsblatt 7
__________________________________________________________________________________
 Aufgabe 21 Auswahlsort (Selection Sort)
Die Informatik kennt eine Reihe von effizienten und weniger effizienten SortierAlgorithmen.
Hier soll ein sehr einfaches Verfahren, der Selection Sort programmiert werden. Es
sollen n int-Zahlen in einem Feld der Maximallänge 1001 aufsteigend sortiert
werden. Die n Zahlen sollen durch Aufrufe des Zufallszahlengenerators rand()
erzeugt werden und danach untereinander auf dem Bildschirm ausgegeben werden.
Der Algorithmus funktioniert folgendermaßen:
Suche das kleinste Element im Feld und tausche es gegen das erste Feldelement
aus. Finde das zweitkleinste Element im Restfeld und tausche es gegen das
Element an zweiter Stelle aus, usw.
Nach dem Sortieren sollen die sortierten Zahlen untereinander auf dem Bildschirm
ausgegeben werden.
Einheften in Praktikumsordner: Struktogramm, Programmlisting, Resultate
Aufgabe 22
Man kann bereits mit einfachen Programmen den Verlauf einer mathematischen
Funktion auf dem Bildschirm darstellen. Schreiben Sie zuerst ein Struktogramm und
ein C-Programm, um den Verlauf einer trigonometrischen Funktion zwischen -180
und +180 Grad auf dem Bildschirm darzustellen. Erstellen Sie zunächst ein
Struktogramm. Beachten Sie folgende
Hinweise:
- Lassen Sie die x-Achse von oben nach unten laufen, so wie die Ausgabe auf dem
Bildschirm geschieht.
- Stellen Sie die x-Achse z.B. durch das ASCII-Zeichen "|", den Funktionsverlauf z.B.
durch ein "*" dar.
- Geben Sie diese Zeichen als Character-Konstanten unter Benutzung des FormatSpezifiers %*c aus, der eine variable Anzahl von Leerzeichen links von dem
eigentlichen Zeichen ausgibt. Der * stellt dabei die Zahl der Leerzeichen dar und
verlangt einen separaten Parameter in der Liste der auszugebenden Größen:
printf("%*c\n", anzahl_der_leerzeichen, '*');
- Denken Sie daran, daß die Standardfunktion wie sin, cos, etc. das Argument nicht
in Grad, sondern im Bogenmaß verlangen
- Verwenden Sie soweit wie möglich Konstanten für die Zahl , Anfangs- und
Endwerte, Schrittweite der Darstellung, Mittenposition auf dem Bildschirm und
Skalierungsfaktor zwischen Funktionswert und Bildschirmposition.
- Formulieren Sie zu zeichnende die Funktion als C-function: double f(double x).
Zu verwendende Funktionen: beliebig.
Herunterladen