Übungsaufgaben 20.September 2013
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Methoden ==
'''Aufgabe 1'''
Die harmonische Reihe ist definiert als unendliche Summe
$\sum_{k=1}^\infty \frac{1}{k}=1+\frac{1}{2}+\frac{1}{3}+\frac{1}{4}+...$
Implementieren Sie eine Methode, die die harmonische Reihe bis zu einer vorgegebenen Anzahl von Reihenglie- dern berechnet.
== Referenzen und Arrays ==
'''Schreiben Sie eine Klasse, die zwei int-Arrays miteinander vergleicht:'''
class Arrays {
public boolean equals(int [] x, int [] y) { ...}
}
Schreiben Sie dazu ein Programm, das zunächst zwei int-Arrays a und b erzeugt. Das Array a soll mit Zahlen in aufsteigender Reihenfolge beginnend bei 1 initialisiert werden, das Array b mit Zahlen beginnend bei 100 in absteigender Reihenfolge. Erstellen Sie nun eine neues Array c, das eine Kopie des Arrays a darstellt. Erweitern Sie dazu die Klasse Arrays. Vergleichen Sie nun Array a mit Array b und Array a mit Array c.
'''Welche Auswirkungen hat es, wenn man die Referenzen der Arrays statt die Arrays selber
vergleicht?''' Demonstrieren Sie dies mit einem kleinen Programm.
== Objekte und Referenzen auf Objekte ==
'''Aufgabe 1'''
Gegeben Sei folgende Klasse:
class Circle {
protected int radius, posX, posY;
protected boolean filled;
public Circle(int rad, int x, int y, boolean filled) { ... }
}
Erweitern Sie diese Klasse, um eine Methode zum Vergleichen von zwei Objekten der Klasse und um einen Konstruktor zur Erzeugung einer Kopie eines Objektes.
Schreiben Sie ein Testprogramm, das Objekte der Klasse Circle erzeugt, kopiert und vergleicht.
'''Aufgabe 2 '''
Wie muss die Klasse Circle erweitert werden, wenn ein Attribut der Form protected int [] fillPattern; dazukommt?