Übungsaufgaben 20.September 2013
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Methoden ==
'''Aufgabe 1'''
Die
harmonische Reihe
ist definiert als unendliche Summe
∞
X
k
=1
1
k
= 1 +
1
2
+
1
3
+
1
4
+
. . .
Implementieren Sie eine Methode, die die harmonische Reihe
bis zu einer vorgegebenen Anzahl von Reihenglie-
dern berechnet.
Sie k ̈onnen Ihre Methode in diese Testumgebung einbetten:
p u b l i c c l a s s
H a r m o n i s c h e R e i h e
{
p u b l i c s t a t i c v o i d
main ( S t r i n g [ ] a r g s )
{
i n t
n ;
d o u b l e
sum ;
n = I n t e g e r . p a r s e I n t ( a r g s [ 0 ] ) ;
/ / M e t h o d e n a u f r u f
/ / sum = . . . . ;
S ys tem . o u t . p r i n t l n ( sum ) ;
}
/ / M e t h o d e n d e f i n i t i o n
}
== 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?