Informatik 1 - Mitschriften von Klaas Ole Kürtz
Informatik 1 - Mitschriften von Klaas Ole Kürtz
Informatik 1 - Mitschriften von Klaas Ole Kürtz
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
(define (pi-summe a b)<br />
(summe (lambda (x) (/ 1 (* x (+ x 2))))<br />
(lambda (x) (+ x 4))<br />
a b))<br />
Allgemein: (lambda () ), Wert: Prozedur.<br />
Statt Prozedurnamen können immer auch λ-Definitionen verwendet werden:<br />
statt (mittelwert x y) kann man folgendes verwenden:<br />
((lambda (x y) (/ (+ x y) 2)) 2 6)<br />
Das λ-Kalkül (Church 1941) ist Grundlage der funktionalen Programmierung.<br />
2.5.6 Sonderform let<br />
Statt define (lokal) auch Sonderform let:<br />
(let ((var1 ausdr1)<br />
(var2 ausdr2)<br />
...<br />
(varn ausdrn))<br />
rumpf)<br />
Leseweise: Lasse var 1 den Wert <strong>von</strong> ausdr 1 haben, ... lasse var n den Wert<br />
<strong>von</strong> ausdr n haben im rumpf.<br />
Konzeptionell nicht neu, sondern let ist äquivalent zu lokalen Prozeduren im<br />
Rumpf („sytaktischer Zucker“für praktische Schreibweise).<br />
Alle Einzelterme in let werden im Prinzip gleichzeitig ausgewertet:<br />
(define x 5)<br />
(let ((x 2) (y x)) (+ x y))<br />
Dabei benutzt (y x) die vorherige Definition <strong>von</strong> x = 5, das (+ x y) benutzt<br />
x = 2.<br />
2.5.7 universelle Berechnungsverfahren<br />
Mathematik: z.B. Nullstellenbestimmung, Differenzieren für (fast) beliebige<br />
Funktionen. Implementierung durch Prozeduren hörerer Ordnung, Beispiel<br />
Nullstellenbestimmung durch Invervallhalbierung.<br />
Gegeben: beliebige Funktion f, Punkte a, b mit f(a) < 0 ∧ f(b) > 0. Idee<br />
Intervallhalbierung: Sei x der Mittelwert <strong>von</strong> a und b. Falls f(x) > 0 liegt die<br />
Nullstelle in ]a, x[, bei f(x) < 0 liegt die Nullstelle in ]x, b[. Laufzeit: wegen<br />
Halbierung in jedem Schritt: O(log( |b−a| )) mit der Toleranzgrenze T (Länge<br />
T<br />
des Zielintervalls). Implementierung:<br />
18