• Keine Ergebnisse gefunden

Allgemeine Hinweise

N/A
N/A
Protected

Academic year: 2022

Aktie "Allgemeine Hinweise"

Copied!
24
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2

Algorithmen und Datenstrukturen 02

Stefan Ploner

1. November 2011

(2)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2

Inhaltsverzeichnis

1 Organisatorisches Allgemeine Hinweise Texteditoren

2 Besprechung Blatt 1 Erste Eindr¨ucke 3 Vorbereitung Blatt 2

Zahlensysteme, Datentypen und Ausdr¨ucke String-Operationen

Arrays und Matrizen

(3)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Allgemeine Hinweise

Allgemeine Hinweise

Bilden von Gruppen ist freiwillig aber w¨unschenswert

Musterl¨osungen d¨urfen von uns nicht herausgegeben werden

Privat vom Tutor angefertigte L¨osungen schon

→ ist aber nicht der Normalfall!

Fragen zur Bewertung oder der L¨osung des letzten Blatts

→ nach der Tafel¨ubung oder per Mail

(4)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Texteditoren

Texteditoren

Eclipse (Windows, Linux, Mac OS) - installiert im CIP

→ nicht zu sehr an Autocomplete gew¨ohnen!

ConTEXT (Windows)

Notepad++ (Windows)

Sublime Text 2 (Windows, Linux, Mac OS)

gedit (Windows, Linux, Mac OS) - installiert im CIP

Kate (Windows, Linux, Mac OS) - installiert im CIP

(5)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Erste Eindr¨ucke

Wie waren eure ersten Erfahrungen?

(6)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zahlensysteme

Bekannte Darstellung f¨ur positive Zahlen (4 Bit) Bin¨ar Dezimal

0011 3

0010 2

0001 1

0000 0

Zweierkomplementdarstellung f¨ur negative Zahlen (4 Bit) Bin¨ar Dezimal

1111 -1

1110 -2

1101 -3

1100 -4

(7)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zahlensysteme

Bekannte Darstellung f¨ur positive Zahlen (4 Bit) Bin¨ar Dezimal

0011 3

0010 2

0001 1

0000 0

Zweierkomplementdarstellung f¨ur negative Zahlen (4 Bit) Bin¨ar Dezimal

1111 -1

1110 -2

1101 -3

1100 -4

(8)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zahlensysteme

Bekannte Darstellung f¨ur positive Zahlen (4 Bit) Bin¨ar Dezimal

0011 3

0010 2

0001 1

0000 0

Zweierkomplementdarstellung f¨ur negative Zahlen (4 Bit) Bin¨ar Dezimal

1111 -1

1110 -2

1101 -3

1100 -4

(9)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zweierkomplementdarstellung

Zweierkomplement im bin¨aren Zahlensystem

negative Zahlen erh¨alt man durch Invertieren aller Bits des Betrags der Zahl und Addieren von 1

am ersten Bit kann man das Vorzeichen erkennen

addiert man 1 zur -1, erh¨alt man durch einen Overflow 0 (1111 + 0001 = 10000, die 1 f¨allt weg, daher 0000)

intern sind keine extra Rechenregeln f¨ur negative Zahlen n¨otig!

Zweierkomplement im hexadezimalen Zahlensystem

am besten ausgehend von Bin¨ardarstellung herleiten

je 4 Bit eine Stelle im Hexadezimalsystem ben¨otigt (0-F)

(10)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zahlensysteme

Beispiele (8 Bit)

Dezimal Bin¨ar Hexadezimal

1 0000 0001 01

-1 1111 1111 FF

93 0101 1101 5D

-93 1010 0011 A3

127 0111 1111 7F

-127 1000 0001 81

128 N/A N/A

-128 1000 0000 80

(11)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Zahlensysteme

Beispiele (8 Bit)

Dezimal Bin¨ar Hexadezimal

1 0000 0001 01

-1 1111 1111 FF

93 0101 1101 5D

-93 1010 0011 A3

127 0111 1111 7F

-127 1000 0001 81

128 N/A N/A

-128 1000 0000 80

(12)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdr¨ucke

Datentypen und Ausdr¨ ucke

int x = 4, y = 1;

double z = 4.0;

boolean a = (y > 5) && (5 != 4) || (x > -4); // true

int b = ++x * 4 + y++; // 21

double c = 6 / z; // 1.5

boolean d = (x == y) || (x > z++); // true

int e = x << 1; // 10

boolean f = !((x >> 2 < y) && (z++ == x)); // false

(13)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 String-Operationen

String.charAt(int) und String.length()

String test = "hallo";

int length = test.length(); // length is now 5

System.out.println(String.charAt(0)); // h System.out.println(String.charAt(3)); // l System.out.println(String.charAt(length)); // error System.out.println(String.charAt(length-1)); // o System.out.println(String.charAt(-1)); // error

→nur diese beiden Funktionen sind in Aufgabe 2.3 erlaubt!

(14)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 String-Operationen

String.charAt(int) und String.length()

String test = "hallo";

int length = test.length(); // length is now 5

System.out.println(String.charAt(0)); // h System.out.println(String.charAt(3)); // l System.out.println(String.charAt(length)); // error System.out.println(String.charAt(length-1)); // o System.out.println(String.charAt(-1)); // error

→nur diese beiden Funktionen sind in Aufgabe 2.3 erlaubt!

(15)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 String-Operationen

String.charAt(int) und String.length()

String test = "hallo";

int length = test.length(); // length is now 5

System.out.println(String.charAt(0)); // h System.out.println(String.charAt(3)); // l System.out.println(String.charAt(length)); // error System.out.println(String.charAt(length-1)); // o System.out.println(String.charAt(-1)); // error

→nur diese beiden Funktionen sind in Aufgabe 2.3 erlaubt!

(16)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Wiederholung zu Arrays

int[] a = { 0, 5, 8, 12, 2 }; int[] b = { 4, 7, 11, 0, 3 }; int[] c = new int[5];

for (int i = 0; i < c.length; i++) { c[i] = a[i] + b[i];

}

(17)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Wiederholung zu Arrays

int[] a = { 0, 5, 8, 12, 2 };

int[] b = { 4, 7, 11, 0, 3 };

int[] c = new int[5];

for (int i = 0; i < c.length; i++) { c[i] = a[i] + b[i];

}

(18)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Matrix-Addition

int[][] a = { { 0, 5, 12 }, { 8, 12, 2 } }; int[][] b = { { 4, 7, 11 }, { 13, 0, 3 } }; int[][] c = new int[2][3];

// calculate c = a + b

for (int i = 0; i < c.length; i++) {

for (int j = 0; j < c[i].length; j++) { c[i][j] = a[i][j] + b[i][j];

} }

// c is now { { 4, 12, 23 }, { 21, 12, 5 } }

(19)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Matrix-Addition

int[][] a = { { 0, 5, 12 }, { 8, 12, 2 } };

int[][] b = { { 4, 7, 11 }, { 13, 0, 3 } };

int[][] c = new int[2][3];

// calculate c = a + b

for (int i = 0; i < c.length; i++) {

for (int j = 0; j < c[i].length; j++) { c[i][j] = a[i][j] + b[i][j];

} }

// c is now { { 4, 12, 23 }, { 21, 12, 5 } }

(20)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Theorie der Matrix-Multiplikation

5 4 3 2 1 0

·

 0 1 2 3 4 5

=

20 32

2 5

Beispiel A·B =C

A= (l×m),B = (m×n)⇒C = (l×n)

A·B 6=B·A⇒nicht kommutativ!

→http://de.wikipedia.org/wiki/Matrix (Mathematik)

(21)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Theorie der Matrix-Multiplikation

5 4 3 2 1 0

·

 0 1 2 3 4 5

=

20 32

2 5

Beispiel A·B =C

A= (l×m),B = (m×n)⇒C = (l×n)

A·B 6=B·A⇒nicht kommutativ!

→http://de.wikipedia.org/wiki/Matrix (Mathematik)

(22)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Theorie der Matrix-Multiplikation

5 4 3 2 1 0

·

 0 1 2 3 4 5

=

20 32

2 5

Beispiel A·B =C

A= (l×m),B = (m×n)⇒C = (l×n)

A·B 6=B·A⇒nicht kommutativ!

→http://de.wikipedia.org/wiki/Matrix (Mathematik)

(23)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Theorie der Matrix-Multiplikation

5 4 3 2 1 0

·

 0 1 2 3 4 5

=

20 32

2 5

Beispiel A·B =C

A= (l×m),B = (m×n)⇒C = (l×n)

A·B 6=B·A⇒nicht kommutativ!

→http://de.wikipedia.org/wiki/Matrix (Mathematik)

(24)

Organisatorisches Besprechung Blatt 1 Vorbereitung Blatt 2 Arrays und Matrizen

Noch Fragen?

Referenzen

ÄHNLICHE DOKUMENTE

Bestimmen Sie mit Mitteln der Analytischen Geometrie den Abstand des Koordinatenursprungs von der Ebene durch die Punkte (1, 1, 1), (2, 3, 3) und (2, 3, 4) sowie den Punkt der Ebene,

In einer Kompostanlage werden 2 Sorten Pflanzsubstrat hergestellt. Für die Herstellung von 1 hl Substrat Sorte A werden u.a. Es stehen höchstens 800 hl Füllstoffe zur Ver-

Für die Herstellung von drei Sorten Fleischsalat stehen 50 kg Fleischwurst und 14 kg Mayon- naise zur Verfügung. Der pro Einheit der einzelnen Sorten zu erzielende Gewinn und

Zugelassene Hilfsmittel: gedruckte Formelsammlungen, Vorlesungsskripts der 3 Semester ohne Anhänge, Arbeitsblätter zur Vorlesung, beliebige Taschenrechner!. Bestimmen Sie mit

Zugelassene Hilfsmittel: gedruckte Formelsammlung, Vorlesungsskripts der 3 Semester ohne Anhänge, Taschenrechner. Kom- mentieren Sie diese Darstellung und erläutern Sie sie je-

Wichtige Gesichtspunkte der Vorbereitung eines Versuches sind, sich über die zugrundeliegende Physik klar zu werden und die zur Auswertung benötigten Formeln ins Protokollheft

In dem ersten Fall (Sie kommen mit dem Thema, zu dem Sie einen Vortrag halten müssen, nicht weiter) mich bitte rechtzeitig (z.B. nicht am Tag davor)

Die Implementierung von sechsTeilbar soll ausnutzen, dass eine Zahl genau dann durch 6 teilbar ist, wenn sie jeweils ohne Rest durch 2 und durch 3 teilbar ist. Schreiben Sie