Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Ruperta Stimmell Geändert vor über 10 Jahren
1
Boolesche Ausdrücke Ist der Rückgabewert eines Ausdrucks vom Typ boolean, so wird dieser als Boolescher Ausdruck bezeichnet (nach dem Mathematiker George Boole). Boolesche Ausdrücke können nur die zwei (Wahrheits-)Werte true oder false annehmen. G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
2
Komplexe Boolesche Ausdrücke
Komplexe Boolesche Ausdrücke werden mit den Mitteln der Aussagenlogik gebildet: Nicht / Negation: ¬ true = false ¬ false = true Negation in Java: ! Wert Und-Verknüpfung: false false = false false true = false true false = false true true = true Und-Verknüpfung in Java: Wert1 & Wert2 Oder-Verknüpfung: false false = false false true = true true false = true true true = true Oder-Verknüpfung in Java: Wert1 | Wert2 G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
3
Relationale Operatoren
Relationale Operatoren setzen ihre Operanden zueinander in Beziehung und liefern den Wahrheitswert der Beziehung zurück. Beispiele: 5 < 3 ergibt false (4-2)=2 ergibt true Mathem. Notation Java Erläuterung = == Identität (Gleichheit) != Ungleichheit < kleiner als <= kleiner oder gleich als > größer als >= größer oder gleich als G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
4
Verkürzte Auswertung logischer Ausdrücke (II)
Vorteile von && und || gegenüber & und | oftmals schnellere Programmausführung Realisierung von Bedingungen mit Vorbedingungen Beispiel: if (d!=0 && 20/d > 5) ... Für den Fall d=0 darf der zweite Operand des &&-Operators nicht ausgewertet werden. Aber: auch die Nebeneffekte abgekürzter Operatoren werden nicht ausgeführt (wie z.B. Bildschirmausgaben innerhalb von Funktionen u.ä.) G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
5
Operatorenreihenfolge (Priorität)
Assoziativität 1 + - Vorzeichen (unär) rechts ! logische Negation (Typ) Typkonversion 2 * / % Multiplikation, Division, Rest links 3 Addition, Subtraktion 4 < <= kleiner, kleiner gleich > >= größer, größer als 5 == Gleichheit != Ungleichheit 6 & logisches Und 7 | logisches Oder 8 = Wertzuweisung G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
6
Verkürzte Auswertung logischer Ausdrücke (I)
Vor der Berechnung des Wertes eines (logischen) Operators werden die Werte aller seiner Operatoren bestimmt. Die Und-Verknüpfung && (Konjunktion) und Oder- Verknüpfungen || (Disjunktion) verkürzen u.U. die Auswertung: Eine Oder-Verknüpfung ist generell wahr, sobald der erste wahre Operand gefunden wird. Eine Und-Verknüpfung ist generell falsch, sobald der erste falsche Operand gefunden wird. In diesen Fällen werden bei den Operatoren && und || die restlichen Operanden nicht mehr ausgewertet. Die Auswertung findet im Regelfall von links nach rechts statt, es sei denn sie wird durch runde Klammern anders vorgegeben. G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
7
G. Gröger - Einführung in die Programmierung mit Java - 1
G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
8
Übung im GIS-Labor Schreiben Sie ein Programm, das die Zahlen von 1 bis 50 aufzählt, wobei anstelle der durch drei oder durch sieben teilbaren Zahlen „autsch“ ausgegeben werden soll. G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
9
Kontrollstrukturen: while- und do-while-Schleife
Syntax: while ( boolean-Ausdruck ) Anweisung; Schleife mit Eintrittsbedingung Anweisung wird 0 bis x-mal ausgeführt do-while-Schleife: Syntax: do Anweisung; while ( boolean-Ausdruck ); Schleife mit Wiederholungsbedingung Anweisung wird mindestens einmal ausgeführt Hinweis: Sollen mehrere Anweisungen im Schleifenrumpf aus-geführt werden, so müssen diese durch geschweifte Klammern zu einem Block zusammengefasst werden. G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
10
Übung im GIS-Labor 1. Simulation eines Würfels: Schreiben Sie ein Programm, das bei jedem Aufruf eine zufällige ganze Zahl zwischen 1 und 6 ausgibt. 2. Logische Ausdrücke a) true & false | true b) (10>2) & (!true==false) c) true==(4!=3) & !(3<=3) 1. Notieren Sie die Ausdrücke in mathematischer Schreibweise; z.B.: ¬ true (32 true) 2. Wie lauten die Wahrheitswerte der Ausdrücke ? G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
11
Arrays Bisher: primitive Datentypen (int, double, ...)
Arrays als erster nicht-primitiver Datentyp Alle Werte haben denselben Typ (z.B. int) Zugriff über Index: my_array[2] = 12; Indizes fangen mit 0 an Integer-Array mit fünf Elementen G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
12
Arbeiten mit Array-Variablen (I)
3 Schritte: (nur Schritt 2 ist wirklich neu) Deklaration int[] my_array; // Array von Integerzahlen Instantiierung my_array = new int[3]; // Erschafft Array mit 3 Elem. Initialisierung my_array[0] = 17; my_array[1] = 0; my_array[2] = -4*my_array[0]; G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
13
Arbeiten mit Array-Variablen (II)
Alternative: alle drei Schritte auf einmal Deklaration mit impliziter Erschaffung und Initialisierung: int[] my_array = {45, -117, 12, 0, 999}; erschafft ein 5-elementiges Array und initialisiert es mit den aufgezählten Werten (angefangen bei Index 0). G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
14
Hinweise zu Arrays (I) Größe eines Arrays kann erst zur Laufzeit feststehen: int[] my_array; int i = //zur Laufzeit berechnet my_array = new int[i]; Größe eines Arrays kann mittels arrayname.length abgefragt werden: int laenge = my_array.length; G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
15
Beispiel zu Arrays Ausgabe: Programm:
// Bestimmung der kleinsten Zahl eines ganzzahligen Arrays class Minimum { public static void main (String args[]) { int[] my_array = {45,12,1,13,-4,0,-23,1001}; int minimum, i; minimum=my_array[0]; for (i=1; i<my_array.length; i=i+1) if (my_array[i]<minimum) minimum=my_array[i]; System.out.print("Die kleinste Zahl ist "); System.out.println(minimum); } Ausgabe: Die kleinste Zahl ist -23 G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
16
Übung im GIS-Labor Schreiben Sie ein Programm, das ein Array mit 6 double-Werten erzeugt, dieses mit selbst gewählten Werten initialisiert und die Summe dieser 6 Werte ausgibt. G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
17
Mehrdimensionale Arrays
Anwendungen zweidimensional: Repräsentation von Matrizen zwei- und mehrdimensional: Speicherung von Wertetabellen Mehrdimensionale Arrays werden durch Arrays von Arrays dargestellt Syntax zur Deklaration und Instantiierung eines n-dimensionalen Arrays: Typ [ ][ ]...[ ] Arrayname = new Typ [d1][d2]...[dn]; Beispiel: int[][] matrix = new int[6][3]; erschafft eine zweidimensionale Matrix mit 6 Zeilen und 3 Spalten G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
18
Hinweise zu Arrays (II)
Arrays sind keine primitiven Datentypen Array-Variablen enthalten nicht selbst das Array, sondern verweisen auf ein Array, das durch new irgendwo im Hauptspeicher angelegt wird. Beispiel: int[] myArray=new int[3]; myArray Wert1 Wert2 Wert3 kein simpler Vergleich zweier Arrays möglich: int[] a={7,12,13,0}; int[] b={7,12,13,0}; System.out.println(a==b); ergibt die Ausgabe false G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
19
2. Übungsaufgabe vom 31. 10. Logische Ausdrücke 1. true & false | true
a) Notieren Sie die Ausdrücke in mathematischer Schreibweise; z.B.: ¬ true (32 true) b) Wie lauten die Wahrheitswerte der Ausdrücke ? Lösung zu a) 1. true false true 2. (10>2) (¬true=false) 3. true=(4 3) ¬(33) G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
20
2. Übungsaufgabe vom 31. 10. Logische Ausdrücke 1. true & false | true
a) Notieren Sie die Ausdrücke in mathematischer Schreibweise; z.B.: ¬ true (32 true) b) Wie lauten die Wahrheitswerte der Ausdrücke ? Lösung zu a) 1. true false true 2. (10>2) (¬true=false) 3. true=(4 3) ¬(33) zu b) true false G. Gröger - Einführung in die Programmierung mit Java Semester - WS 02/03
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.