Vorlesung 2 21.10.99 -Einführendes Beispiel- Diskrete Mathematik I Vorlesung 2 21.10.99 -Einführendes Beispiel-
Übersicht Flurstück Flurstücke eines Gebietes Flächeninhalt eines Polygons Gaußsche Flächenformel Programmierung: Iteration, For-Schleife Pascal Java Speicherung der Punktkoordinaten Flurstücke eines Gebietes Redundanz Vermeidung der Redundanz Tabellen Objekte siehe Vorlesung „Geoinformation"
Flächeninhalt eine Polygons (x3,y3) (x4,y4) F (x2,y2) (x5,y5) (x1,y1)
Gaußsche Flächenformel k = 1 5 (xk - xk+1)(yk + yk+1) F = 1 2 S
f := f + ((x[k] - x[k+1])*(y[k] + y[k+1])); Iteration, For-Schleife (Pascal) (x4,y4) (x1,y1) (x5,y5) (x2,y2) (x3,y3) 2 k = 1 5 (xk - xk+1)(yk + yk+1) F = 1 S begin f := 0; (x6,y6) for k:=1 to 5 do begin f := f + ((x[k] - x[k+1])*(y[k] + y[k+1])); end flaeche := f/2; end
Iteration, For-Schleife (Java) (x4,y4) (x1,y1) (x5,y5) (x2,y2) (x3,y3) 2 k = 1 5 (xk - xk+1)(yk + yk+1) F = 1 S { f = 0; (x6,y6) for(k = 1; k <= 5; k++) { f = f + ((x[k] - x[k+1])*(y[k] + y[k+1])); } flaeche = f/2; }
Speicherung der Punktkoordinaten (x3,y3) (x4,y4) A (x2,y2) (x5,y5) (x1,y1) A = [(x1,y1), ( x2,y2), ( x3,y3), (x4,y4), (x5,y5)]
D A A A = [(x1,y1), ( x2,y2), ( x3,y3), (x4,y4), (x5,y5)] Speicherung der Punktkoordinaten P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 B C D A A = [(x1,y1), ( x2,y2), ( x3,y3), (x4,y4), (x5,y5)] (x1,y1) (x4,y4) (x5,y5) (x2,y2) (x3,y3) A D = [(x5,y5), ( x4,y4), ( x9,y9), (x10,y10), (x11,y11)]
Redundanz Die Repräsentation von Polygonen durch Punktlisten A = [(x1,y1), ( x2,y2), ( x3,y3), (x4,y4), (x5,y5)] D = [(x5,y5), ( x4,y4), ( x9,y9), (x10,y10), (x11,y11)] eignet sich direkt für die Berechnung von Flächen speichert Punktkoordinaten redundant ab Nachteil: Platzbedarf (kleines Problem) fehleranfällig, denn die Koordinaten des gleichen Punktes treten an verschiedenen Stellen auf und können verschiedene Werte annehmen (großes Problem) Änderungen sind schwierig Alternative: eigene Punktetabelle und Verweis auf diese Tabelle
Vermeidung der Redundanz: Tabellen Punktliste P1 2.0 0.0 P2 5.0 1.0 P3 7.0 3.0 P4 5.0 4.0 P5 1.0 1.0 P6 7.0 6.0 P7 5.0 6.0 P8 5.0 7.0 P9 3.0 7.0 P10 3.0 6.0 P11 0.0 3.0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 A B C D Grundstücksliste A 1 2 3 4 5 B 4 7 8 9 C 4 3 6 7 D 4 9 10 11 5
Vermeidung der Redundanz: Punkte als Objekte -> Vorlesung „Geoinformation“
„Objektorientierung“ im 1. Semester Vorlesung „Diskrete Mathematik“ Modellierung von Objekten UML „Programmierung“ Implementierung von Objekten Java Diskrete Mathematik Verwendung von Objekten in Algorithmen