BERGISCHE UNIVERSIT ¨AT GESAMTHOCHSCHULE WUPPERTAL
GAUSS-STRASSE 20 42097 WUPPERTAL (Korrespondenzanschrift) 42119 WUPPERTAL (Lieferanschrift) TELEX 8 592 262 bughw TELEFAX (0202) 439-2901 TELEFON (0202) 439-1
Fachbereich 7
MATHEMATIK
Prof. Dr. Hans-J ¨urgen Buhl Praktische Informatik / Numerik
e-mail: Juergen.Buhl@math.uni-wuppertal.de
Einf¨ uhrung in die Informatik und Programmierung
(Informatik I)
WS2000/2001 – ¨ Ubungsblatt 9 20. Dezember 2000
Bearbeitungstermin: 2. KW
Aufgabe 1. Struktogramm, 3 Punkte
Schreiben Sie eine Benutzeranleitung zu folgendem Algorithmus:
oder t·t > p t:=t+ 2
solange bis pmodt= 0 t:= 1
solange p≤n wiederhole p:= 3
Ausgabe 2
ja nein
Ausgabe p p:=p+ 2 n <2
Eingabe n
ja nein
t·t > p
Geben Sie dabei die erlaubten Eingaben an und
”spezifizieren“ Sie die dann gelieferten Ausgaben.
Versuchen Sie einen Beweis dazu zu f¨uhren, daß der Algorithmus das von Ihnen in der Benutzeranleitung beschriebene Ergebnis liefert. Gibt es Aus- nahmen?
1
Aufgabe 2. Struktogramm: Fortsetzung, 3 Punkte
Schreiben Sie ein Programm, das den Algorithmus aus Aufgabe 1 realisiert.
Aufgabe 3. Zinsen, 4 Punkte
Schreiben Sie ein Programm, das das Anwachsen eines Startkapitals von K Euro (1. Januar) durch Zinsen (Zinssatzp%) bis Jahresende berechnet, wenn monatlich am Ersten jeweils 200,– Euro eingezahlt werden.
Aufgabe 4. Zinsen: Fortsetzung, 6 Punkte
Schreiben Sie ein Programm, das das Anwachsen eines Startkapitals von K Euro (1. Januar) durch Zinsen (Zinssatzp%) bis Jahresende berechnet, wenn durch eine Eingabeschleife im Jahr zu unterschiedlichen Daten unterschied- liche Betr¨age ein- beziehungsweise ausgezahlt werden.
Aufgabe 5. Pseudozufallszahlen, 2 Punkte
Ersetzen Sie in Ihrem Programm (Aufgabe 5 / ¨Ubungsblatt 4) den benutzten Zufallszahlengenerator durch:
double drand48(void)
Informieren Sie sich mittelsman drand48¨uber die n¨otige Initialisierung. Tes- ten sie die G¨ute (Mittelwert, Standardabweichung).
Aufgabe 6. rationalNumbers: Forts., 2 Punkte
Erg¨anzen Sie Ihre KlasserationalNumberum die Operatoren
rationalNumber operator+ (const rationalNumber& z, const rationalNumber& n)
und
rationalNumber operator- (const rationalNumber& z, const rationalNumber& n) Benutzen Sie dabei das kgV (kleinste gemeinsame Vielfache) als Hauptnenner
und beachten Sie die Beziehung:
∀i, j ∈N: kgV(i, j)·ggT(i, j) =i·j
cProf. Dr. Hans-J¨urgen Buhl
2