43
5. Elementare Befehle und Struktogramme

5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

  • Upload
    buibao

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

5. Elementare Befehle und Struktogramme

Page 2: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 2

Programmablauf

Beschreibung des Programmablaufs mittel grafischer Symbole

Beispiel : Flussdiagramme

ja

nein

Besser : Struktogramme

Page 3: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 3

Elementare Befehle

Befehlstypen

Zuweisung

Verzweigung

Schleife

Page 4: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 4

5.1 Zuweisungen

Einfache Zuweisung

Beispiel flaeche=r*r*3.14159;

Struktogramm

flaeche = r*r*3.14159Inhalte sind beliebig zu beschreibenoder

flaeche = r2*3.14159

Page 5: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 5

Einfache Zuweisung

Aufbau

Variable = Ausdruck

AllgemeinL-Wert Zuweisungsoperator R-Wert(L-value) (R-value)

L-Wert bezeichnet immer eine Speicherstelle zur Speicherungdes Ergebnisses, z.B. ein Variablenname

R-Werte können auch Ausdrücke sein wie x*y+1

Page 6: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 6

Zusammengesetzte Zuweisung

Anstelle von i=i+1; i+=1;

d=d*(r+2); d*=r+2;

Prinzip v=v op r; v op= r;

Beispiele += -= *= /= %=

Page 7: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 7

5.2 Verzweigungen

Typen

if

if else

else-if Kette

switch

Auswahloperator

Page 8: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 8

ifif ( boolscher Ausdruck)

Anweisung1Anweisung2

WirkungsweiseAuswertung des boolschen Ausdrucksfalls true : Führe Anweisung1 aus, dann Anweisung2falls false: Führe Anweisung2 aus

Anweisung : Befehl;

{Befehl;Befehl;.....;Befehl;}

Beispiel if ( x < 0 )x = - x;

// jetzt ist x immer >= 0

Page 9: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 9

Struktogramm

boolscher AusdruckFalschWahr

Anweisung2

Anweisung1

Beispiel

x < 0FalschWahr

x = - xHier gehts dann weiter

X = - X

Page 10: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 10

if-else

if ( boolscher Ausdruck)Anweisung1

elseAnweisung2

Anweisung3

WirkungsweiseAuswertung des boolschen Ausdrucksfalls true : Führe Anweisung1 aus, dann Anweisung3falls false: Führe Anweisung2 aus, dann Anweisung3

Page 11: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 11

Beispiel

if ( durchmesser <= 0 ) // unzulässig{

cout << " Durchmesser muss > 0 sein ";return 1;

}else // Eingabedaten in Ordnung{

flaeche=pow(durchmesser,2)*pi/4;widerstand= rho*laenge/flaeche;

// Ausgabecout << " Laenge \t" << laenge << " m" << endl;cout << " Durchmesser \t" << durchmesser <<" mm" << endl;cout << " Widerstand \t" <<widerstand <<" Ohm"<<endl;return 0;

}

Page 12: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 12

Struktogramm

boolscher AusdruckFalschWahr

Anweisung2

Anweisung3

Anweisung1

Page 13: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 13

Beispiel

durchmesser <= 0FalschWahr

Ausgabe : durchmesser muss > 0 seinreturn 1

flaeche=durchmesser ² *pi/4widerstand= rho*laenge/flaecheAusgabe Laenge, Durchmesser,

Widerstandreturn 0

Page 14: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 14

Verschachtelung// Verschachtelung von if else#include <iostream>using namespace std;void main(){

int i,j,k;cin >> i >> j >> k;if ( i < j )

if ( j < k )cout << i << j << k;

elseif ( i < k )

cout << i << k << j;else

cout << k << i << j;else

if ( i < k )cout << j << i << k;

elseif ( j < k )

cout << j << k << i;else

cout << k << j << i;}

if-else Befehle müssen immer vollständigim if oder else Teil eines „übergeordneten“if-else Befehls enthalten sein

Page 15: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 15

Verschachtelung/2

// Werte Stromimpuls#include <iostream>using namespace std;void main(){

double t;cin >> t ;if ( t < 0 )

cout << " Wert ist " << 0 <<endl;else

if ( t < 1 )cout << " Wert ist " << t <<endl;

elseif ( t < 2 )

cout << " Wert ist " << 2-t <<endl;else

cout << " Wert ist " << 0 <<endl;

}

Page 16: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 16

Alternative

// Werte Stromimpuls#include <iostream>using namespace std;void main(){

double t;cin >> t ;if ( t < 0 )

cout << " Wert ist " << 0 <<endl;else if ( t < 1 )

cout << " Wert ist " << t <<endl;else if ( t < 2 )

cout << " Wert ist " << 2-t <<endl;else

cout << " Wert ist " << 0 <<endl;

}

Page 17: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 17

else if Kette

if ( boolscher Ausdruck1)Anweisung1

else if (booscher Ausdruck2)Anweisung2

else if ....

elseAnweisungm

Anweisungn

WirkungsweiseAuswertung von boolscher Ausdruck1falls true : Führe Anweisung1 aus,

dann Anweisungnfalls false: Auswertung von boolscher Ausdruck2

falls true : Führe Anweisung2 aus, dann Anweisungn

falls false:

.....

Page 18: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 18

Struktogramm

t<0Wahr Falsch

t<1Wahr Falsch

t<2Wahr Falsch0

t2-t 0

Page 19: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 19

Switch/Beispiel// Kleinrechner/switch#include <iostream>using namespace std;void main(){

int i,j;char op;cin >> i >> op >> j;switch (op){

case '+' :cout << i << op << j <<" = " << i+j << endl;break;

case '-' :cout << i << op << j <<" = " << i-j << endl;break;

case '*' :cout << i << op << j <<" = " << i*j << endl;break;

case '/' :cout << i << op << j <<" = " << i/j << endl;break;

case '%' :cout << i << op << j <<" = " << i%j << endl;break;

default :cout << " unzulässiger Operator " << endl;

}}

Page 20: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 20

switch

switch ( ganzzahliger Ausdruck ){

case konstante1 :Befehl;Befehl;...Befehl;break;

case konstante2 :Befehl;Befehl;...Befehl;break;

.....

default :Befehl;Befehl;...Befehl;

}

Kann weggelassen werdenNicht empfehlenswert !!!!!

Page 21: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 21

switch

Wirkungsweise

Auswertung des Ausdrucks (muss ganzzahliger Typ sein)

Vergleich mit den ganzzahligen Konstanten (alle verschieden)

Bei Übereinstimmung mit einer Konstanten->Verzweigung zur case – Marke.Ausführung der Befehle bis zum break, dann Verzweigung zum Ende (nach dem switch).

Fehlt der break-Befehl wird mit dem darauf folgenden Befehl fortgesetzt !!!!!

Stimmt der Wert mit keiner Konstanten überein wird bei default fortgesetzt,Sofern vorhanden (wenn nicht, findet keine Aktion statt).

Page 22: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 22

Struktogramm

Ausdruck+

-*

/%

sonstAusgabei+ j Ausgabe

i - j Ausgabei * j

Ausgabei / j

Ausgabei modulo j

Fehlermeldung

Page 23: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 23

Gegenüberstellung

Die else-if Kette ist universeller als switch. Sie kann mit beliebigen booleschen Ausdrücken formuliert werden.

Switch ist beschränkt auf den Vergleich ganzzahliger Ausdrücke (u.a. Aufzählungstyp !!), ist aber übersichtlicher, insbesondere wenn es viele Fälle sind.

Page 24: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 24

Auswahloperator

Beispiel

Anstelle von

if ( x >= 0 )y = x;

elsey = -x;

kann auch

y = (x>=0)? x : -x;

mit dem Auswahloperator ? verwendet werden (bedingte Bewertung).

Page 25: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 25

Auswahloperator

Form :

(boolscher Ausdruck) ? Ausdruck1: Ausdruck2;

Wirkung :

Wenn der boolsche Ausdruck wahr ist, wird Ausdruck1 verwendet,sonst Ausdruck2.

Page 26: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 26

5.3 Schleifen

while-Schleife

do while Schleife

for Schleife

-> Hinweis auf Entwicklung

Page 27: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 27

Modellierung von while-Schleifen

1) Identifizierung der Wiederholungsbedingung (WB) der Schleife

(ev. Negation einer Abbruchbedingung)

2) Ermittlung, ob die Schleife immer mindestens einmal durchlaufen wirdfalls ja: do whileandernfalls: while

3) Identifizierung aller Befehle, die wiederholt werden wie z.B.:nächste Daten lesen – neue Summe berechnen – zählen – ...

4) Existenz von Befehlen unter 3) prüfen, welche WB ändern. Ansonsten ist es eine unendliche Schleife.

Page 28: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 28

while Schleife

while ( boolescher Ausdruck)Anweisung1

Anweisung2

Wirkung(*) Werte boolschen Ausdruck aus

falls true : Führe Anweisung1 ausMache weiter bei (*)

falls false: Führe Anweisung2 aus

Page 29: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 29

Struktogramm

Solange boolscher Ausdruck wahr ist

Anweisung1

Anweisung2

Page 30: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 30

while Schleife/Beispiel

In einem Programm sollen positive ganze Zahlen eingelesen und deren Durchschnitt berechnet werden.

Das Programm endet, wenn eine negative Zahl oder 0 eingegeben wird.

Danach sind Durchschnitt und Anzahl der gelesenenZahlen am Bildschirm auszugeben.

Modellierung1- Wiederholungsbedingung gelesene Zahl>02- es muss ev. nichts getan werden -> while-Schleife3- zu wiederholende Befehle: zählen, summieren, lesen4- der Lesebefehl beeinflusst die Wiederholungsbedingung

Page 31: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 31

Beispiel

// Lesen von positiven Zahlen#include <iostream>using namespace std;void main(){

int anzahl=0,eingabezahl;float summe=0.0;

// Erste Zahl eingebencout << " Bitte positive Zahl eingeben " << endl;cout << " Abbruch mit 0 " << endl;cin >> eingabezahl;

//Schleifewhile (eingabezahl>0){

++anzahl;summe+=eingabezahl;cout << " Bitte naechste Zahl eingeben/Abbruch mit 0 " << endl;cin >> eingabezahl;

}//Ergebnis ausgeben

cout << " Der Durchschnitt ist : " << summe/anzahl << endl;cout << " Es wurden "<<anzahl<<" Zahlen gelesen"<<endl;

}

Welche Testfälle sollte man wählen?

-> Testplan

Welche Schwächenhat dieses Programm?

Page 32: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 32

Beispiel

Page 33: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 33

do while Schleife

do Anweisung1

while ( boolescher Ausdruck)Anweisung2

Wirkung

(*) Führe Anweisung1 ausWerte boolschen Ausdruck aus

falls true : Mache weiter bei (*)falls false: Führe Anweisung2 aus

In einer do while Schleifewird die Anweisung in derSchleife mindestens 1 malausgeführt !!!!

Page 34: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 34

Struktogramm

Solange boolscher Ausdruck wahr ist

Anweisung2

Anweisung1

Page 35: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 35

Beispiel

Es soll näherungsweise die Wurzel einer Zahl a > 0 mit folgendem Verfahrenberechnet werden :

x0 = a xk+1 = (xk + a/ xk) /2 für k=0,1,2,...

Man beende das Verfahren, wenn |xk * xk – a| < 10-10 gilt

Modellierung1- Wiederholungsbedingung Betrag>= 10-10 2- x1 sollte berechnet werden -> do while-Schleife3- zu wiederholende Befehle: Formel4- die Formel beeinflusst die Wiederholungsbedingung

Page 36: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 36

Beispiel/Ergebnis

// Wurzel#include <iostream>#include <cmath>using namespace std;void main(){

double x,a;// Daten eingeben

cout << " Bitte a>0 eingeben " << endl;cin >> a;

//Algorithmus mit Plausubilitätskontrolleif ( a> 0 )

{x = a; // Startwertdo{

x = (x+a/x)/2;//Formel}while (fabs (x*x-a) >=1.0e-10 );

// Ausgabecout << " Wurzel(" << a <<") = " << x << endl;}

elsecout << " a muss > 0 sein " << endl;

}

Testfälle

Page 37: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 37

for Schleife / Beispiel für Zählschleife

for ( i=1 ; i<n ; i+=1 ) Anweisung1

Anweisung2

Wirkung

Führe den ersten Befehl (hier z.B. i=1) aus

(*) Werte den boolschen Ausdruck (hier z.B. i<n) ausFalls true : Führe Anweisung1 aus

Führe die letzte Anweisung (hier z.B. i+=1) ausWeiter bei (*)

Falls false: Weiter mit dem ersten Befehl nach der SchleifeAnweisung2

Page 38: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 38

(vereinfachtes) Struktogramm

Für Zähler = Anfangwert .... Endwert

Anweisung1

Anweisung2

Page 39: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 39

Beispiel

Man berechne die Summe der ersten n natürlichen Zahlen.n ist einzulesen.

// Summe natuerlicher Zahlen#include <iostream>using namespace std;void main(){

int i,n,summe=0;//eingabe

cout << " Bitte n eingeben " << endl;cin >>n;

//Summationfor (i=1;i<=n;i++)

summe+=i;//Ergebnisausgabe

cout << " Die Summe der ersten " << n <<" natuerlichen Zahlen ist ";cout << summe << endl;

}

Page 40: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 40

for-Schleife allgemein

for (Anweisung1;boolscher Ausdruck;Anweisung3) Anweisung2

Anweisung4

Wirkung

Führe Anweisung1(=Initialisierung ) aus (ev. mehrere durch Komma getrennt)

(*) Werte den boolschen Ausdruck ausFalls true : Führe Anweisung2 aus

Führe Anweisung3 (=Reinitialisierung) aus(ev. mehrere durch Komma getrennt)

Weiter bei (*)

Falls false: Weiter mit dem ersten Befehl nach der SchleifeAnweisung4

Page 41: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 41

Struktogramm

Anweisung1

Solange boolscher Ausdruck wahr ist

Anweisung2

Anweisung3

Anweisung4

Page 42: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 42

For-Schleife/Beispiele

for (i=0 ; i<n ; i++){....}

for (i=0 ; i<n ; i+=2){....}

for (k=m ; k>0 ; k--){....}

for (i=1,k=100; i<n && k > 0; i++,k--){....}

for (Datei oeffnen, hole erste Daten ; kein Dateiende ; lese naechste Daten){verarbeite Daten}

Page 43: 5. Elementare Befehle und Struktogramme · Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme. Dr. Norbert Spangler

15.10.2006Dr. Norbert Spangler / Grundlagen der Informatik 43

5.4 Sonstige Befehle

break Verzweigung ans Ende eines Switch-Befehls oder einer Schleife. Weiter mit dem darauf folgenden Befehl.

continue Beginne mit der nächsten Wiederholung einer Schleife

while/do-while : Wiederholungsbedingungfor : Reinitialisierung

goto marke Verzweigung zu einer Marke. Eine Marke ist ein Name gefolgt von :Eine Marke kann vor jedem Befehl stehen.Tipp : goto vermeiden (erhöht Intransparenz).