Diskrete Mathematik I Vorlesung 3 28.10.99 -Arrays-

Slides:



Advertisements
Ähnliche Präsentationen
Einführung in die Programmiersprache C/C++
Advertisements

ALP II: Objektorientierte Programmierung Sommersemester 2006
Imperative Programmierung
Fast Fourier Transformation
Zusammenfassung der Vorwoche
der Universität Oldenburg
Sequentielle Liste - Array
Der Einstieg in das Programmieren
Java: Objektorientierte Programmierung
Indirekte Adressierung
Java: Grundlagen der Sprache
Bilder und Rasterdaten
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Processing: Arrays & Laden von Dateien Aufbauend auf dem Beispiel: File I/O LoadFile1.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 3 Klassen, Objekte, Arrays und Kontrollstrukturen Sommersemester 2003 Lars Bernard.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Übung Diskrete Mathematik SS 2003 Segmentschnitt I.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Bäume-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung der Vorwoche Variable stehen für (einen) Wert, der sich im Programmablauf ändern kann. Variablen besitzen einen.
DVG Klassen und Objekte
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
FH-Hof Algorithmen und Datenstrukturen - Einführung Richard Göbel.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Diskrete Mathe 9 Vorlesung 9 SS 2001
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
Kollektionen in Java Aufzählungstypen, Generische Typen
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
Einführung in die Programmiersprache C 3.Tag Institut für Mathematische Optimierung - Technische Universität Braunschweig.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Diskrete Mathematik II
Generalisierung/Spezialisierung Subtypisierung/Vererbung
Polynome und schnelle Fourier-Transformation
Einführung in die Programmierung
Einführung in die Programmiersprache C 4
Auslegung eines Vorschubantriebes
Technische Informatik Reihungen – Felder - Arrays.
Objektorientiertes Konstruieren
Vorlesung Binärer Suchbaum II-
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Analyseprodukte numerischer Modelle
Datentypen Überblick Datentypen Einfache / fundamentale Datentypen
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
Programmiervorkurs WS 2014 Referenzdatentypen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 6 SS 2001 Segmentschnitt III.
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
Diskrete Mathematik II
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
Sammlungsklassen Array.
Diskrete Mathematik I Vorlesung 2 Arrays.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Vorlesung Einführendes Beispiel-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd Foliendesign:
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Einführung in die Programmierung mit Java
Einführung in die Programmierung mit Java
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Gerhard Gröger Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003.
Grundlagen der Geometrie
Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003 Institut für Kartographie und Geoinformation Prof.-Dr. Lutz Plümer, Dr. Gerhard Gröger,
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd.
Einführendes Beispiel
Felder in der Informatik
 Präsentation transkript:

Diskrete Mathematik I Vorlesung 3 28.10.99 -Arrays-

Übersicht Arrays (am Beispiel von Java) Unterschiede in der Verwendung primitiver Datentypen/Arrays Arrays - beachte Zugriff Beispiele Skalarprodukt Multiplikation von Matrizen Punkte als Arrays Transformationen Homogene Koordinaten

Arrays (am Beispiel von Java) Unterscheidungen primitive Datentypen: boolean char byte short int long float 1 2 1 2 4 8 4 Byte Größe steht von vorneherein fest Referenztypen Arrays Strings Objekte Größe erst zur Laufzeit bekannt

Unterschiede in der Verwendung primitiver Typen / Arrays Primitive Typen int i, j; // Deklaration i = 0; // Initialisierung j = 1; oder: int i = 0, j = 1; /* Deklaration und Initialisierung gleichzeitig */ Arrays int a[], b[]; // int - Array float v[], w[]; // float- Array float m1[][]; // float - Matrix a = new int[5]; // Erzeugung w = new float[3]; m1 = new float[3][3]; oder: int b[] = {1,2,3,4,5}; /* Deklaration, Erzeugung und Initialisierung gleichzeitig */

Arrays - beachte: 3 Schritte Im Unterschied zu Pascal Deklarieren Erzeugen (Instanz bilden, Instanziieren) Initialisierungen Im Unterschied zu Pascal die Größe n des Arrays wird erst zum Zeitpunkt der Erzeugung (new double[3] ) festgelegt Die Indizierung läuft von 0 ... n - 1 n -1

Zugriff int a[][] = new int[2][3]; a[0][0] = 1; a[0][1] = 2;

Beispiel: Skalarprodukt int v[], w[]; v = {1,2,3}; w = {4,5,6}; int iprod = 0; for (int i = 0; i < 3; i++) iprod = iprod + v[i] * w[i]; for-Schleife for(init; test; update) i++ i = i + 1

Beispiel: Multiplikation von Matrizen = c[i,k]= Sa[i,j]*b[j,k]

Beispiel: Multiplikation von Matrizen float a[][], b[][], c[][]; .. float c[][] = {{0,0,0}, {0,0,0}, {0,0,0}}; for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) c[i][j] = c[i][j] + a[i][k] * b[k][j];

Punkte als Arrays y P x

Verschiebung (Translation) y P x

Verschiebung (Translation) y P´ P x

Verschiebung (Translation) y P´ P x

Drehung (um den Ursprung) y P x

Drehung (um den Ursprung) y P´ P a x

Drehung (um den Ursprung) y P´ P a x

Scherung (Zoom in, Zoom out) y 6 P 2 x 2 8

Scherung (Zoom in, Zoom out) y 9 3 P´ x 4 16

Homogene Koordinaten y P x homogene Koordinaten

Translation in homogenen Koordinaten y P´ P x

Translation in homogenen Koordinaten y P´ P x

Drehung in homogenen Koordinaten y P´ P a x

Drehung in homogenen Koordinaten y P´ P a x

Scherung in homogenen Koordinaten y P´ x

Scherung in homogenen Koordinaten y P´ x

Homogene Koordinaten Repräsentation in homogenen Koordinaten führt zu „homogener“ Modellierung der Operationen Implementierung der Matrizenmultiplikation in Hardware bringt Effizienz 2D 3 x 3 - Matrix 3D 4 x 4 - Matrix