Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Informatik 1 Übung 2
2
Abgabe Übung bis Mittwoch, 13:15 Zu zweit abgeben ist ok
Korrektur bis nächste Woche
3
Übung 2 Nachbesprechung
4
Variablennamen Unterstrich erlaubt
_x ist gültig Doppelter Unterstrich am Anfang reserviert __x besser nicht verwenden
5
Wert von Variablen Undefiniert vor erster Zuweisung
Typischerweise zufällig int main() { int a, b; a = 1; b = 2; }
6
Komma-Operator Komma am besten nie verwenden
Ausser mehrere Variablen deklarieren int main() { int a, b, c; } int main() { int a, b, c = 10; } int main() { int a, b; int c = 10; }
7
Main Methode Eine main()-Funktion pro Projekt
Programm startet mit main() Rückgabewert im System sichtbar int main() { return 0; }
8
Main Methode Eine main()-Funktion pro Projekt Vorübergehend Später
Programm startet mit main() Rückgabewert im System sichtbar Vorübergehend Nur eine .cpp-Datei pro Projekt Später Mehrere .cpp-Dateien Eigene Funktionen int aufgabe1() { return 1; } int main() { return aufgabe1();
9
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3
10
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int)
11
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int) 6 (int)
12
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int) 6 (int) 3 (float)
13
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int) 6 (int) 3 (float) 9 (float)
14
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int) 6 (int) 3 (float) 9 (float) x = 9.0 Zuweisung am Schluss
15
Auswertung von Ausdrücken
Priorität: Klammern Multiplikation Addition x = ( ) * 3 2 (int) 6 (int) 3 (float) 9 (float) x = 9.0 Zuweisung am Schluss
16
Übung 3 wiederholung
17
Vergleichsoperatoren
Vergleichen zwei Ausdrücke Resultat ist ein Wert vom Typ bool (true/false) Mathematische Bedeutung Schreibweise Bedeutung == Gleich != Ungleich < Kleiner als <= Kleiner gleich
18
Logische Operatoren Verbinden zwei logische Werte Logische Bedeutung
Operanden müssen vom Typ bool sein Logische Bedeutung Schreibweise Bedeutung && UND || ODER ! NICHT
19
Logischer Ausdruck Priorität: x > 10 && y < 20 || z == 1
Vergleichsoperatoren Logisches UND Logisches ODER x > 10 && y < 20 || z == 1
20
Logischer Ausdruck Priorität: Logisches NICHT Vergleichsoperatoren
Logisches UND Logisches ODER x > 10 && y < 20 || z == 1 bool bool bool
21
Logischer Ausdruck Priorität: Logisches NICHT Vergleichsoperatoren
Logisches UND Logisches ODER x > 10 && y < 20 || z == 1 bool bool bool bool
22
Logischer Ausdruck Priorität: Logisches NICHT Vergleichsoperatoren
Logisches UND Logisches ODER x > 10 && y < 20 || z == 1 bool bool bool bool bool
23
Fallunterscheidungen
Anweisungen nur unter bestimmten Bedingungen ausführen
24
Fallunterscheidungen
If-then-else Ternary operator Switch-case Beispiel if (x>0) { y = sqrt(x); } else { y = sqrt(-x); } y = x>0 ? x : -x; switch(x) { case 0: y = 2; break; case 1: y = 5; break; case 2: y = 8; break; case 3: y = 11; break; default: y = 0; Verwendung Komplexe Bedingung Bedingte Zuweisung Unterscheidung nach Wert Wenige Fälle Viele Fälle
25
If-then-else Bedingte Ausführung einer Anweisung
Bedingung muss logischer Ausdruck sein Ausdruck vom Typ bool if (bedingung) anweisung1;
26
If-then-else Bedingte Ausführung einer Anweisung
Bedingung muss logischer Ausdruck sein Ausdruck vom Typ bool if (bedingung) anweisung1; if (bedingung) anweisung1; else anweisung2;
27
If-then-else Bedingte Ausführung einer Anweisung
Bedingung muss logischer Ausdruck sein Ausdruck vom Typ bool if (bedingung) anweisung1; if (bedingung) { anweisung1; anweisung2; } else { anweisung3; anweisung4; } if (bedingung) anweisung1; else anweisung2;
28
If-then-else Bedingte Ausführung einer Anweisung
Bedingung muss logischer Ausdruck sein Ausdruck vom Typ bool if (bedingung) { anweisung1; anweisung2; } else if (bedingung) { anweisung3; anweisung4; } else { anweisung 5; } if (bedingung) anweisung1; if (bedingung) { anweisung1; anweisung2; } else { anweisung3; anweisung4; } if (bedingung) anweisung1; else anweisung2;
29
Ternary operator Bedingte Zuweisung
Bedingung ist true -> x = wert1; Bedingung ist false -> x = wert1; x = bedingung ? wert1 : wert2; if (bedingung) x = wert1; else x = wert2;
30
Switch-case Grosse Fallunterscheidung Variable muss eine Zahl sein
Break nicht vergessen! switch(ausdruck) { case wert1: anweisung1; break; case wert2: anweisung2; break; case wert3: anweisung3; break; default: anweisung4; break; } if (zahl==wert1) anweisung1; else if (zahl==wert2) anweisung2; else if (zahl==wert3) anweisung3; else anweisung4;
31
Übung 3 Übung
32
Fallunterscheidungen
If-then-else Ternary operator Switch-case Beispiel if (x>0) { y = sqrt(x); } else { y = sqrt(-x); } y = x>0 ? x : -x; switch(x) { case 0: y = 2; break; case 1: y = 5; break; case 2: y = 8; break; case 3: y = 11; break; default: y = 0; Verwendung Komplexe Bedingung Bedingte Zuweisung Unterscheidung nach Wert Wenige Fälle Viele Fälle
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.