Technische Universität Braunschweig Dr. Werner Struckmann/Stephan Mielke Institut für Programmierung und Reaktive Systeme 22. März 2016 Vorkurs Informatik 4. Übungsblatt Aufgabe 14: Der folgende Algorithmus verwendet das sogenannte Horner-Schema, um den Wert des Polynoms P (x) = n X ak xk = a0 + x(a1 + x(a2 + · · · + x(an−1 + xan ) · · · )) k=0 an der Stelle x zu berechnen. y ← 0; i ← n; while i ≥ 0 do y ← ai + x · y; i ← i − 1; end a) Werten Sie das Polynom 5x4 + 3x2 − 7x − 12 an der Stelle x = −3 mit dem HornerSchema aus. b) Wie viele Additionen und Multiplikationen führt der Algorithmus für ein Polynom vom Grad n aus? c) Erörtern Sie die Korrektheit des Algorithmus. d) Schreiben Sie einen Algorithmus, der jeden Term des Polynoms von Grund auf neu berechnet. Wie groß ist die Laufzeit dieses Algorithmus? Wie ist sie im Vergleich zu der des Horner-Schemas? Aufgabe 15: Befüllen eines Stapels: Push(Z); Push(B); Pop(); Lösen Sie die folgenden Aufgaben: a) Ein Stapel (Keller, engl. stack) ist eine der grundlegenden Datenstrukturen in der Informatik. Er arbeitet nach dem LIFO-Prinzip, das in Listing 1 dargestellt ist. Definierte Operationen auf einem Stapel sind Pop(), Push() und Pull(). Erklären Sie die Funktionsweise der beiden ersten Operationen. Was könnte die Pull()-Operation leisten? b) Eine Schlange (engl. queue) arbeitet nach dem FIFO-Prinzip. Veranschaulichen Sie die Arbeitsweise in einer Zeichnung. c) Auf einer Schlange sind die Operationen Enqueue() und Dequeue() definiert. Wie funktionieren diese? d) Wie lassen sich die beiden Datenstrukturen unter Verwendung eines Arrays implementieren? e) Wie verhält es sich mit den Laufzeiten der einzelnen Operationen in Ihrer Implementierung? –2– Aufgabe 16: Überprüfen Sie die Äquivalenz der folgenden Aussagen: Kommutativgesetze: Assoziativgesetze: Distributivgesetze: Idempotenzgesetze: Absorptionsgesetze: Negation: De Morgan-Regeln: φ ∨ ψ ⇔ ψ ∨ φ, φ ∧ ψ ⇔ ψ ∧ φ (φ ∨ ψ) ∨ χ ⇔ φ ∨ (ψ ∨ χ), (φ ∧ ψ) ∧ χ ⇔ φ ∧ (ψ ∧ χ) φ ∨ (ψ ∧ χ) ⇔ (φ ∨ ψ) ∧ (φ ∨ χ), φ ∧ (ψ ∨ χ) ⇔ (φ ∧ ψ) ∨ (φ ∧ χ) φ ∨ φ ⇔ φ, φ ∧ φ ⇔ φ φ ∨ (φ ∧ ψ) ⇔ φ, φ ∧ (φ ∨ ψ) ⇔ φ φ ∨ ¬φ ⇔ W, φ ∧ ¬φ ⇔ F, ¬(¬φ) ⇔ φ ¬(φ ∨ ψ) ⇔ ¬φ ∧ ¬ψ, ¬(φ ∧ ψ) ⇔ ¬φ ∨ ¬ψ Aufgabe 17: Schreiben Sie die Dezimalzahl 92 als Dualzahl, als Oktalzahl und als Hexadezimalzahl. Aufgabe 18: Schreiben Sie die Dezimalzahlen 23 und 13 als Dualzahlen und berechnen Sie die Summe und das Produkt dieser Zahlen in der Dualzahldarstellung. Aufgabe 19: Beweisen oder widerlegen Sie die folgende Aussage: Eine natürliche Zahl n ∈ N ist genau dann ungerade, wenn 3n + 1 gerade ist. –3–