Sie sind auf Seite 1von 2

UE Einführung in die strukturierte und objektorientierte Programmierung WS 2016/17

AAU Klagenfurt, Institut für Informatik

Übungsblatt 2

Schreiben Sie jeweils ein Programm mit folgender Aufgabenstellung.

Einfache Schleifen

Lesen Sie die Zahl n ein. Geben Sie die Zahlen 1 … n aus.

Lesen Sie die Zahlen a und n ein. Geben Sie die Zahlen a … (a+n) aus.

Lesen Sie die Zahl n ein. Geben Sie die ersten n ungeraden Zahlen aus. Geben Sie zudem deren Summe
aus.

Lesen Sie n Zahlen ein und berechnen Sie deren arithmetisches Mittel sowie deren Summe.

Lesen Sie die Zahl n ein. Geben Sie die ersten n Fibonacci Zahlen aus. Fibonacci Zahlen werden folgend
berechnet:

A0 = 0, A1 = 1, An+2 = An+1+An

Lesen Sie die Zahl n ein. Berechnen Sie die Fakultät der Zahl n.

Lesen Sie die Zahl n ein. Schreiben Sie ein Programm, dass die ersten n Zahlen aufaddiert.

Lesen Sie solange Zahlen ein, bis die Zahl 0 eingegeben wird. Geben Sie danach die größte sowie die
zweitgrößte eingelesene Zahl aus. Geben Sie auch aus, an wievielter Stelle diese Zahlen eingelesen
wurden.

Geben Sie alle Zahlen zwischen 1 und n aus, welche durch 7 teilbar sind.

Testen Sie, ob eine eingelesene Zahl x gleich der Summe all ihrer Teiler ist. Die Zahl selbst ist zwar auch
ein Teiler, soll hier aber nicht betrachtet werden. Bsp: Die Teiler von 6 sind somit 1,2,3.

Wählen Sie je 3 Aufgaben aus und ersetzen Sie, wenn möglich, die verwendete Schleife durch eine andere
Art der Schleife (for, while oder do-while).
UE Einführung in die strukturierte und objektorientierte Programmierung WS 2016/17
AAU Klagenfurt, Institut für Informatik

Arrays (eindimensional)

Schreiben Sie in ein Array der Länge n die Zahlen 1 … n. Geben Sie danach das Array einmal von „vorne
nach hinten“ und einmal von „hinten nach vorne“ aus.
Bsp.: Länge 3, Inhalt: [1,2,3]; Ausgabe: 1,2,3 und 3,2,1

Hängen Sie zwei direkt initialisierte Arrays umgedreht aneinander. Bsp: Aus [1,2,3] und [4,5,6] wird
[3,2,1,6,5,4]

Übertragen Sie zwei bereits aufsteigend sortierte Arrays (müssen nicht gleich lang sein) in ein neues Array.
Das neue Array muss dabei auch aufsteigend sortiert sein.
Bsp: Aus [1,5,7] und [2,4,6] wird [1,2,4,5,6,7]

Lesen Sie n Werte ein und speichern Sie diese in einem Array vom Typ short. Bestimmen Sie in diesem die
Häufigkeit der Zahl 5 und geben Sie sie aus.

Lesen Sie n Werte ein und speichern Sie diese in einem Array vom Typ long. Bestimmen Sie die Häufigkeit
der Zahlen 1 bis 10 und geben Sie die Häufigkeit je Zahl aus.

Löschen Sie aus einem Array die Zahl a (a wird z.B. eingelesen). Erzeugen Sie hierfür ein neues Array,
passender Länge (nicht zu lang, nicht zu kurz).

Drehen Sie ein direkt initialisiertes Array um. Erzeugen Sie kein weiteres Array. Bsp: Aus [2,6,9] wird [9,6,2]

Bestimmen Sie die Hamming-Distanz zweier boolean-Arrays. Der Bool’sche Wert true steht für das Bit 1,
der Wert false für das Bit 0. Die Hamming Distanz ist die Summe der Unterschiede in den Arrays. Die
Arrays müssen gleich lang sein. Bsp.: [true true true] [false false true], Hamming Distanz: 2

Erstellen Sie ein char-Array das nur aus Kleinbuchstaben besteht und keine anderen Zeichen enthält.
Lesen Sie den Wert X ein. Verschlüsseln sie das Array nun mittels der Cäsar-Verschlüsselung: Bei der Cäsar-
Verschlüsselung wird jedes Zeichen des Alphabets durch das Zeichen ersetzt, welches X-Stellen weiter
hinten im Alphabet steht. Beachten Sie, dass nach ‘z‘ wieder ‘a‘ kommt. Beachten Sie, dass zu einem char
ein Wert hinzuaddiert werden kann, das Ergebnis aber umzuwandeln (casten) ist.

Definieren Sie ein int-Array namens "Tage" mit 365 Elementen und befüllen Sie es mit tage[0] = 1, tage[1]
= 2, usw. Lassen Sie den Inhalt des Arrays und die Anzahl der Stunden bis zu diesem Tag mittels einer
Schleife ausgeben.
Bsp: 1 Tag hat 24 Stunden, 2 Tage haben 48 Stunden, 3 Tage haben 72 Stunden,…