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.
„Reale Welt“: komplexe Objekte mit „Geschichte“ (Bankkonto, Flugreservierung,<br />
Buchungssysteme); Organisationsprinzipien hier:<br />
• Objekte mit Zuständen<br />
• Ströme<br />
4.1 Zuweisungen und lokale Zustände<br />
Objektverhalten häufig abhängig <strong>von</strong> Vorgeschichte, Beispiel: Abhebung <strong>von</strong><br />
1000 DM <strong>von</strong> meinem Konto möglich? Je nachdem...<br />
Abstraktion der Geschichte auf einen veränderbaren Zustand, z.B. aktueller<br />
Kontostand; Beispiel: abheben vom Konto: Falls möglich: Ausgabe Kontostand,<br />
sonst: entsprechende Mitteilung<br />
>(abheben 50)<br />
80<br />
>(abheben 50)<br />
30<br />
>(abheben 50)<br />
Deckung nicht ausreichend!<br />
Bisher: Variable entspricht eindeutigem Wert; Nun: Änderung <strong>von</strong> Variablenwerten<br />
durch die Sonderform (set! ); Effekt bei<br />
Auswertung <strong>von</strong> set!:<br />
• Werte Ausdruck aus.<br />
• Verändere Wert <strong>von</strong> zum berechneten Wert<br />
• Ergebnis <strong>von</strong> set!: undefiniert<br />
(define kontostand 130)<br />
(define (abheben betrag)<br />
(if (>= kontostand betrag)<br />
(begin (set! kontostand (- kontostand betrag))<br />
kontostand)<br />
"Deckung nicht ausreichend!"))<br />
Notwendig: Sonderform (begin ... ); Auswertung:<br />
• Werte nacheinander die Ausdrücke a 1 , a 2 , ..., a n aus<br />
• Wert der Sonderform = Wert <strong>von</strong> a n<br />
42