Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Vergleich von Schleifen: Wie kann man eine Schleife durch eine andere darstellen ?

Ähnliche Präsentationen


Präsentation zum Thema: "Vergleich von Schleifen: Wie kann man eine Schleife durch eine andere darstellen ?"—  Präsentation transkript:

1 Vergleich von Schleifen: Wie kann man eine Schleife durch eine andere darstellen ?

2 Aufgabe: Wie stellt man eine for-Schleife durch eine while-Schleife dar ?

3 B f w A A1 B A A3 f w while- Schleife for- Schleife

4 A1; while(B){ A; A3; } for(A1;B;A3){ A; }

5 Beispiel:

6 Annahme: Bei allen folgenden Beispiel- Programmen wird stillschweigend vorausgesetzt, daß über Tastatur für die Variablen z1 und z2 ganze Zahlen eingegeben wurden: scanf("%d",&z1); scanf("%d",&z2);

7 for(i=z1;i<=z2;i=i+1){ sum = sum+i; } sum = 0; } B A1 A3 A A1 B A A3 Was berechnet dieses Programm ? Die Summe aller ganzen Zahlen zwischen z1 und z2, wobei z1<=z2 sein muß. i = z1; while(i<=z2){ sum = sum+i; i = i+1;

8 Aufgabe: Wie stellt man eine while-Schleife durch eine for-Schleife dar ?

9 while(B){ A; } for(;B;){ A; } Im Schleifenkopf der for-Anweisung müssen 3 Ausdrücke vorkommen, die durch zwei Semikolon getrennt werden. Da links vom 1. Semikolon und rechts vom 2. Semikolon nichts steht, muss dies jeweils der leere Ausdruck sein.

10 Beispiel:

11 while(i<=z2){ sum = sum+i; i = i+1; } } sum = 0; i = z1; sum = 0; i = z1; BB A A for(;i<=z2;){ sum = sum+i; i = i+1;

12 Aufgabe: Wie stellt man eine do...while –Schleife durch eine while-Schleife dar ?

13 B f w A do...while- Schleife B f w A Angenommen, das Programm wurde bis an diesen Punkt abgearbeitet. Was fällt dann auf ? Das Programm ist wieder in einer while-Schleife !

14 A; while(B){ A; } do{ A; }while(B);

15 Beispiel:

16 do{ sum = sum+i; i = i+1; }while(i<=z2); sum = 0; i = z1; } sum = 0; i = z1; B A A B A sum = sum+i; i = i+1; sum = sum+i; i = i+1; while(i<=z2){

17 Aufgabe: Wie stellt man eine while-Schleife durch eine do...while –Schleife dar ?

18 B f w A B f w A Angenommen, das Programm wurde bis an diesen Punkt abgearbeitet. Was fällt dann auf ? do...while- Schleife while- Schleife Das Programm ist wieder in einer do...while-Schleife !

19 while(B){ A; } if(B){ do{ A; }while(B); }

20 Beispiel:

21 while(i<=z2){ sum = sum+i; i = i+1; } sum = 0; i = z1; } sum = 0; i = z1; B A sum = sum+i; i = i+1; if(i<=z2){ }while(i<=z2); do{ B A B

22 Aufgabe: Geben Sie eine weitere Möglichkeit an, eine while-Schleife durch eine do...while –Schleife darzustellen.

23 while(B){ A; } do{ if(B){ A; } }while(B); Testen Sie dies, indem sie folgende Voraussetzungen machen: 1) B ist genau 0 Mal richtig. 2) B ist genau 1 Mal richtig. 3) B ist genau 2 Mal richtig. 4) B ist genau 3 Mal richtig....

24 Aufgabe: Wie stellt man eine for-Schleife durch eine do...while –Schleife dar, bzw. eine do...while –Schleife durch eine for-Schleife

25 Man wandelt die for-Schleife in eine while –Schleife um und dann die while –Schleife in eine do...while –Schleife bzw. umgekehrt, kurz:

26 for-Schleife siehe oben (frühere Folie) siehe oben (frühere Folie) while-Schleife do...while –Schleife


Herunterladen ppt "Vergleich von Schleifen: Wie kann man eine Schleife durch eine andere darstellen ?"

Ähnliche Präsentationen


Google-Anzeigen