1 / 13

Übersicht

Übersicht. Boolesche Ausdrücke (Werte wahr/falsch ) Relationale Operatoren (==, >,<, ..) Kontrollstrukturen while do - while switch break. Boolesche Ausdrücke. Bedingungen in if oder for : Beispiele: if( i == 0 ) ... for(int i = 0 ; i < 1000 ; i = i + 1).

milos
Download Presentation

Übersicht

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Übersicht • Boolesche Ausdrücke (Werte wahr/falsch) • Relationale Operatoren (==, >,<, ..) • Kontrollstrukturen • while • do - while • switch • break

  2. Boolesche Ausdrücke • Bedingungen in if oder for: • Beispiele: • if(i == 0) ... • for(int i = 0 ; i < 1000 ; i = i + 1)...

  3. Relationale Operatoren

  4. Beispiel: For-Schleife mit komplexer Bedingung • Es sollen die Zahlen von 1 bis 100 addiert werden, jedoch soll vorher abgebrochen werden,wenn die Summe die Zahl 2000 erreicht hat. int Summe =0; for(int i = 1; (i <= 100 & Summe < 2000); i = i+1) { Summe = Summe + i; }

  5. while-Schleife: while ( boolean-Ausdruck ) { Anweisung 1; Anweisung 2; …. } Schleife mit Eintrittsbedingung Anweisung wird 0 bis x-mal ausgeführt while- und do-while-Schleife • do-while-Schleife: • do { • Anweisung 1; • Anweisung 2; • …. • } • while ( boolean-Ausdruck ); • Schleife mit Wiederholungsbedingung • Anweisung wird mindestens einmal ausgeführt

  6. Übung 1 • Schreibe ein Programm, das die Zahlen von 1 bis 100 aufzählt, wobei anstelle der durch 5 und durch sieben teilbaren Zahl der Text „XY“ ausgeschrieben werden soll. Ist die Zahl nur durch 5 teilbar soll der Buchstabe „X„ und nur durch 7 teilbar der Buchstabe „Y“ ausgegeben werden. • Tip: Verwende die Operation % (Rest der ganzzahligen Division): • z.B. 11 % 5 = 1 (11 geteilt durch 5 ist 2 mit Rest 1)

  7. Übung 2 Die Collatz-Folge ist definiert durch: n  n/2 falls n gerade ist n  3n+1 falls n ungerade ist. Berechne diese Zahlenfolge für den Startwert 27 bis die Zahl 1 erreicht ist. Die ersten Folgenglieder lauten 27, 82, 41, 124, 62, 31 usw.

  8. Übung 3 • Schreibe ein Programm, das die natürlichen Zahlen solange summiert, bis die Summe die Zahl 3000 erstmals überschreitet. Gib die Summe und die Anzahl der natürlichen Zahlen aus. • Tip: Verwende while-Schleifen: • while ( boolean-Ausdruck )Anweisung; • do Anweisung;while ( boolean-Ausdruck );

  9. switch-Anweisung • dient zur Realisierung von Fallunterscheidungen • switch (Ausdruck ) {case Wert1 : Anweisung1; // 1. Fall Ausdruck=Wert1case Wert2 : Anweisung2; // 2. Fall Ausdruck=Wert2. . . default: Ansonsten-Anweisung;// ansonsten} • es werden alle Anweisungen ab der ersten erfüllten case-Bedingung ausgeführt !! (inkl. der Ansonsten-Anweisung ) • Ausdruck muss vom Typ byte, short, int oder char sein • Wert1, Wert2, … muss eine Konstante vom gleichen Typ wie Ausdruck sein

  10. Beispiel 1 zur switch-Anweisung class Switch1 { public static void main (String args[]) { int i; for (i=0; i < 10; i=i+1) switch(i) { case 1: System.out.println("eins"); case 2: System.out.println("zwei"); case 5: System.out.println("fünf"); default: System.out.println(i); } } } Ausgabe: 0 eins zwei fünf 1 zwei fünf 2 3 4 fünf 5 6 7 8 9 Problem: fehlerhafte Ausgabe, da jeweils nach der ersten passenden case-Bedingung alle anderen Anweisungen ohne weitere Überprüfung ausgeführt werden!

  11. Die break-Anweisung (1) • dient zum Abbruch von switch-Fallunterscheidungen switch ( Ausdruck ) { case Wert1 : { Anweisung1; break; } case Wert2 : { Anweisung2; break; } . . . default: Ansonsten-Anweisung; } • Der Programmablauf wird bei Ausführung eines break-Befehls hinter der switch-Anweisung fortgesetzt!

  12. Beispiel 2 zur switch-Anweisung class Switch2 { public static void main (String args[]) { int i; for (i=0; i < 10; i=i+1) switch(i) { case 1: {System.out.println("eins"); break;} case 2: {System.out.println("zwei"); break;} case 5: {System.out.println("fünf"); break;} default: System.out.println(i); } } } Ausgabe: 0 eins zwei 3 4 fünf 6 7 8 9 Die Ausgabe ist nun korrekt, da die switch-Anweisung jeweils nach der Ausführung der passenden case-Bedingung mittels break verlassen wird.

  13. Die break-Anweisung (2) • kann auch zum Abbruch von Schleifen (for, while, do-while) eingesetzt werden Beispiel while-Schleife:while ( boolean-Ausdruck1 ) {. . .if ( boolean-Ausdruck2 ) break;// Abbruch. . . } • Der Programmablauf wird hinter der Schleifenanweisung fortgesetzt

More Related