IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.
-
Upload
gerlinde-weisel -
Category
Documents
-
view
116 -
download
0
Transcript of IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.
![Page 1: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/1.jpg)
IF-ELSE-IF-Ketten
![Page 2: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/2.jpg)
Aufgabe:
Fiktiver Bußgeldkatalog I
>0 km/h: 1000 Euro
![Page 3: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/3.jpg)
import java.io.*;
public class MainBussgeld1 { public static void main() throws IOException{ double v, bussgeld; String str;
![Page 4: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/4.jpg)
System.out.println( "Geschwindigkeitsüberschr. eingeben"); BufferedReader myinput = new BufferedReader(new InputStreamReader( System.in)); str = myinput.readLine(); v=Double.parseDouble(str);
![Page 5: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/5.jpg)
Wichtig:Wegen Platzmangels wird eine
Bildschirmausgabe durch print("...")
und die Eingabe über Tastatur durch
eingabe(...) abgekürzt.
![Page 6: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/6.jpg)
if(v<=0){ bussgeld=0;}else{ bussgeld=1000;}
print("Strafe="+bussgeld);}
![Page 7: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/7.jpg)
Aufgabe:
Fiktiver Bußgeldkatalog II
10 km/h: 20 Euro>10 km/h: 1000 Euro
![Page 8: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/8.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ bussgeld=1000; }}
Warum ist folgendes nicht nötig ?
if ((v<=10)&&(v>0))
Weil im else-Teil automatisch
v>0ist
![Page 9: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/9.jpg)
Nachteil der Darstellung:Hohe Verschachtelungstiefe
Alternative, übersichtlichere (flachere) Darstellung:
![Page 10: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/10.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ bussgeld=1000; }}
if(v<=0){ bussgeld=0;}else{if(v <= 10){ bussgeld=20; }else{ bussgeld=1000;}}
Warum können Klammern
weggelassen werden ?
Weil sie nur eine Anweisung
einschliessen !
Die linke und die obige Darstellung sind – bis auf die
Optik – genau gleich
![Page 11: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/11.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ bussgeld=1000; }}
if(v<=0){ bussgeld=0;}else if(v <= 10){ bussgeld=20;}else{ bussgeld=1000;}
Die obige Darstellung ist flacher als die linke Darstellung, aber
gleichwertig zur linken Darstellung
Sie heißt IF-ELSE-IF Kette
![Page 12: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/12.jpg)
Aufgabe:
Fiktiver Bußgeldkatalog III
10 km/h: 20 Euro 20 km/h: 40 Euro>20 km/h: 1000 Euro
![Page 13: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/13.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ if(v <= 20){ bussgeld=40; } else{ bussgeld=1000; } } }
![Page 14: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/14.jpg)
Nachteil der Darstellung:Hohe Verschachtelungstiefe
Alternative, übersichtlichere (flachere) Darstellung:
![Page 15: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/15.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ if(v <= 20){ bussgeld=40; } else{ bussgeld=1000; } } }
if(v<=0){ bussgeld=0;}else{if(v <= 10){ bussgeld=20;}else{if(v <= 20){ bussgeld=40;}else{ bussgeld=1000; }}}
Weil sie nur jeweils eine Anweisung einschliessen !
Die linke und die obige Darstellung sind – bis auf die
Optik – genau gleich
Warum können farbige Klammern
weggelassen werden ?
![Page 16: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/16.jpg)
if(v<=0){ bussgeld=0;}else{ if(v <= 10){ bussgeld=20; } else{ if(v <= 20){ bussgeld=40; } else{ bussgeld=1000; } } }
if(v<=0){ bussgeld=0;}else if(v <= 10){ bussgeld=20;}else if(v <= 20){ bussgeld=40;}else{ bussgeld=1000; }
Die obige Darstellung ist flacher als die linke Darstellung, aber
gleichwertig zur linken Darstellung
![Page 17: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/17.jpg)
Aufgabe:
Fiktiver Bußgeldkatalog IV
10 km/h: 20 Euro 20 km/h: 40 Euro 30 km/h: 60 Euro>30 km/h: 1000 Euro
![Page 18: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/18.jpg)
if(v<=0){ bussgeld=0;}else{
if(v<=10){ bussgeld=20; } else{
if(v <= 20){ bussgeld=40; } else{
if(v <= 30){ bussgeld=60; } else{ bussgeld=1000; } } }}
![Page 19: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/19.jpg)
Nachteil der Darstellung:Hohe Verschachtelungstiefe
Alternative, übersichtlichere (flachere) Darstellung:
![Page 20: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/20.jpg)
if(v<=0){ bussgeld=0;}else{
if(v<=10){ bussgeld=20; } else{
if(v <= 20){ bussgeld=40; } else{
if(v <= 30){ bussgeld=60; } else{ bussgeld=1000; } } }}
if(v<=0){ bussgeld=0;}else{if(v<=10){ bussgeld=20;}else{if(v <= 20){ bussgeld=40;}else{if(v <= 30){ bussgeld=60;}else{ bussgeld=1000;}}}}
Klammern können weggelassen werden
![Page 21: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/21.jpg)
if(v<=0){ bussgeld=0;}else{
if(v<=10){ bussgeld=20; } else{
if(v <= 20){ bussgeld=40; } else{
if(v <= 30){ bussgeld=60; } else{ bussgeld=1000; } } }}
if(v<=0){ bussgeld=0;}else if(v<=10){ bussgeld=20;}else if(v <= 20){ bussgeld=40;}else if(v <= 30){ bussgeld=60;}else{ bussgeld=1000;}
Die linke und die obige Darstellung sind – bis auf die Optik – genau gleich
![Page 22: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/22.jpg)
if(v<=0){ bussgeld=0;}else{
if(v<=10){ bussgeld=20; } else{
if(v <= 20){ bussgeld=40; } else{
if(v <= 30){ bussgeld=60; } else{ bussgeld=1000; } } }}
if(v<=0){ bussgeld=0;}else if(v<=10){ bussgeld=20;}else if(v <= 20){ bussgeld=40;}else if(v <= 30){ bussgeld=60;}else{ bussgeld=1000;}
Zeichen Sie das dazugehörige Struktogramm!
![Page 23: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/23.jpg)
W
b=0
v<=0
Wichtig: NUR Der Else Teil wird jeweils weiter verschachtelt !
Was fällt auf (hinsichtlich der Verschachtelung) ?
v<=10
v<=20
v<=30
b=20
b=40
b=60 b=1000
W
W
W
F
F
F
F
![Page 24: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/24.jpg)
Struktogramm einer beliebigen
IF-ELSE-IF Kette
![Page 25: IF-ELSE-IF- Ketten. Aufgabe: Fiktiver Bußgeldkatalog I >0 km/h: 1000 Euro.](https://reader035.fdocument.pub/reader035/viewer/2022062318/55204d6549795902118bac7b/html5/thumbnails/25.jpg)
W F
W F
W F
W F
W F
A1
B1
B2
B3
B4
...
A2
A3
A4... ...
Wichtig: NUR Der Else Teil wird jeweils weiter verschachtelt !
Was fällt auf (hinsichtlich der Verschachtelung) ?