Beruflich Dokumente
Kultur Dokumente
Programmierung I
Erstelle die Lösungen für die folgenden Aufgaben auf Papier! Veriziere dein Programm,
indem du es in deine Entwicklungsumgebung abtippst und ausführst.
Bitte umblättern.
1
Aufgabe 19: Diagonale Produktsumme
Erstelle eine Methode diagonalProductSum, die für ein übergebenes zweidimensionales
quadratisches Array zunächst das Produkt über die beiden Diagonalen bildet und diese
dann aufaddiert. Das Ergebnis soll zurückgegeben werden. Falls ein Eintrag der Matrix
den Wert 0 hat, so soll dieser übersprungen werden.
Beispiel:
3 8 3 4 1
5 0 7 4 9
9 8 2 6 2 → (3 · 2 · 1 · 3) + (1 · 4 · 2 · 3) = 18 + 24 = 42
2 0 4 1 6
3 2 3 5 3
zu berechnen:
int c = Math . pow( a , b ) ;
Beispiel: Math.pow(2, 5) entspricht 25 und liefert 32 zurück.
Beispiel: Der Aufruf decimalToBinay(42) liefert den String "101010" zurück.
2
Aufgabe 22: Zusatzaufgabe: Stack/ Queue
a) Erstelle die Klassen MyStack, MyQueue und MyNode.
MyStack repräsentiert einen einfachen Stack, welcher Knoten vom Typ MyNode bein-
haltet.
MyQueue repräsentiert eine einfache Queue, welche Knoten vom Typ MyNode bein-
haltet.
MyNode speichert Daten vom Typ String.
b) Zeichne auf einem Blatt Papier oder dem digitalen Whiteboard in deinem Breakout-
Room auf, was einen Stack bzw. eine Queue von einer normalen Liste unterscheidet.
c) Erstelle nun folgende Methoden für MyStack:
public void add(String value): Fügt einen neuen Wert zu dem Stack hin-
zu. Ist der übergebene Wert jedoch null, soll dieser nicht hinzugefügt werden.
public String get(): Gibt den richtigen Wert von MyStack zurück.
public boolean isEmpty(): Gibt zurück, ob der Stack leer ist.
public int size(): Gibt die Anzahl der Elemente zurück.
public void print(): Gibt alle Elemente durch Kommas getrennt in folgen-
der Syntax auf der Konsole aus:
[<element_0>,<element_1>,...,<element_n-1>,<element_n>]
d) Erstelle nun folgende Methoden für MyQueue:
public void add(String value): Fügt einen neuen Wert zu der Queue hin-
zu. Ist der übergebene Wert jedoch null, soll dieser nicht hinzugefügt werden.
public String get(): Gibt den richtigen Wert von MyQueue zurück.
public boolean isEmpty(): Gibt zurück, ob der Stack leer ist.
public int size(): Gibt die Anzahl der Elemente zurück.
public void print(): Gibt alle Elemente durch Kommas getrennt in folgen-
der Syntax auf der Konsole aus:
[<element_0>,<element_1>,...,<element_n-1>,<element_n>]