Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Informatik 1 Übung 2.

Ähnliche Präsentationen


Präsentation zum Thema: "Informatik 1 Übung 2."—  Präsentation transkript:

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


Herunterladen ppt "Informatik 1 Übung 2."

Ähnliche Präsentationen


Google-Anzeigen