222
 
   
   
clemens clemens clemens
Referat

TitelAblauf und Kontrollstrukturen in verschiedenen Programmiersprachen 
Anzahl Worte1387 
SpracheDeutsch 
ArtReferat 
SchlagworteSchläfer; Verzweigungen; Mehrfachauswahl; Selektion; 
Downloads++++++++ 
Bewertung++++ 

Download Zip (31.6kB)
Download Pdf (1.3kB)


Auszug aus dem Referat (ohne Grafiken)

Ablauf und Kontrollstrukturen in verschiedenen Programmiersprachen

1. Übersicht

2. Verzweigungen (Selektion)

2.1 Einfach-Selektion
2.2 Mehrfach-Selektion

3. Schleifen (Iteration)

3.1 Bedingungsprüfung am Anfang
3.2 Bedingungsprüfung am Ende
3.3 Zählschleifen

1. Übersicht


Originaldokument enthält an dieser Stelle eine Grafik!
Original document contains a graphic at this position!


2. Verzweigungen (Selektion)

2.1 Einfach-Selektion

Ein logischer Ausdruck (Bedingung) wird auf seine Wahrheit geprüft. Je nachdem, ob die Bedingung erfüllt wird oder nicht (logisches Ausdrucksergebnis ist wahr oder falsch), wird einer von zwei verschiedenen Anweisungsblöcken ausgeführt.

In den Programmiersprachen C, JAVA, Visual Basic und Cobol 85 sieht die Syntax der Einfach-Selektion folgendermaßen aus:
C, C++, JAVA
C,C++,JAVA spezifische Anmerkungen
Syntax:

if (Bedingung)
{
   Anweisungsblock1;
}
else
{
   Anweisungsblock2;
}

Zu beachten:

Der else-Zweig kann entfallen.
Die Bedingung(en) müssen geklammert werden.
Die Bedingungen können mit && (logisches UND) oder mit || (logisches ODER) verknüpft bzw. mit ! negiert werden.
Einzelne Anweisungen müssen nicht eingeklammert werden (die Klammerpaare {} könne weggelassen werden), mehrere Anweisungen allerdings schon.

Beispiele
C/C++

if (i = = 1)
{
   printf("i ist 1");
}
else
{
   printf("i ist nicht 1");
}

JAVA
siehe oben, statt printf aber System.out.println

Visual Basic
Visual Basic spezifische Anmerkungen
Syntax:

If Bedingung Then
   Anweisungsblock1
ElseIf Bedingung Then
   Anweisungsblock2
Else
   Anweisungsblock3
EndIf

Zu beachten:

Der Else- bzw. ElseIf-Zweig kann entfallen, der If-Zweig muß dann mit End If abgeschlossen sein.
In einer If-Anweisung kann es mehrere ElseIf-Zweige geben.
Die Bedingungen können mit And oder Or verknüpft, bzw. mit Not negiert werden.
Es besteht noch die Möglichkeit die If ... Then ... [Else ...]-Anweisung in einer Zeile zu schreiben.

Beispiel

If i = 1 Then
   print "i ist 1"
ElseIf i = 2
   print "i ist 2"
Else
   print "i ist nicht 1 oder 2"
EndIf


Cobol 85
Cobol 85 spezifische Anmerkungen
Syntax:

IF Bedingung THEN
   Anweisungsblock1
   oder NEXT SENTENCE
ELSE Bedingung Then
   Anweisungsblock2
   oder NEXT SENTENCE
END-IF

Zu beachten:

Der ELSE-Zweig kann entfallen, allerdings muß der IF-Zweig mit END-IF abgeschlossen sein.
Mehrere Bedingungen müssen geklammert werden.
Die Bedingungen können mit AND oder mit OR verknüpft, bzw. mit NOT negiert werden.
NEXT SENTENCE: für IF-Anweisungen mit Leeranweisung

Beispiel

IF i = 1 THEN
   DISPLAY "i ist 1"
ELSE
   DISPLAY "i ist nicht 1"
END-IF


2.2 Mehrfach-Selektion

Der Wert einer Auswahlgröße bestimmt, welche der beliebig vielen Anweisungen durchlaufen wird.

In den Programmiersprachen C, JAVA, Visual Basic und Cobol 85 sieht die Syntax der Mehrfach-Selektion folgendermaßen aus:
C, C++, JAVA
C,C++, JAVA spezifische Anmerkungen
Syntax:

switch Ausdruck
{
   case Konstante:
      Anweisung1; break;
   case Konstante:
      Anweisung2; break;
   default:    Anweisungs3;
}

Zu beachten:

Der default-Zweig kann entfallen.
Wird kein break nach einer Anweisung gesetzt, so werden auch die Anweisungen der nächsten case-Teile abgehandelt, bis zum nächsten break oder bis zum Ende des switch-Statements.

Beispiele
C/C++

switch ( i )
{
   case 1:   printf("i ist 1."); break;
   case 2:   printf("i ist 2.");
   case 3:   printf("i ist 2,3"); break;
   case 4:
   case 5:
   case 6:   printf("i ist zw. 4 u.6."); break;
   default:   printf("Falsch!");
}

JAVA
siehe oben, statt printf aber System.out.println

Visual Basic
Visual Basic spezifische Anmerkungen
Syntax:

Select Case Ausdruck
   Case Ausdruckliste
      Anweisung1
   Case Ausdruckliste
      Anweisung2
   Case Else
      Anweisung3
Select End

Zu beachten:

Der Case Else-Zweig kann entfallen.
Bei der Verwendung von logischen Operatoren ist zusätzlich Is vor den Operator zu setzen.
Strings und Variablen sind im Case möglich.

Beispiel

Select Case i
   Case 1
      Print "i ist 1."
   Case 2,3
      Print "i ist 2,3."
   Case 4 To 6
      Print "i ist zw. 4. u. 6."
   Case Else
      Print "Falsch!"
Select End


Cobol 85
Cobol 85 spezifische Anmerkungen
Syntax:

EVALUATE Ausdruck [ALSO Ausdruck]
WHEN Literal [ALSO Literal]
   Anweisung,
WHEN Konst THRU Konst
   Anweisung,
WHEN OTHER
   Anweisung,
END-EVALUATE

Zu beachten:

Der WHEN OTHER-Zweig kann entfallen, die Anweisung muß jedoch mit END- EVALUATE abgeschlossen werden.
Operanden vor dem ersten WHEN: Auswahlsubjekte
Operanden im WHEN: Auswahlobjekte
Die Anzahl der Auswahlobjekte in jeder WHEN-Phrase muß gleich der Anzahl der Auswahlsubjekte sein.
WHEN-Phrase trifft zu, wenn alle ihre Auswahlobjekte mit den entsprechenden Auswahsubjekten übereinstimmen.
Bei WHEN können entweder Werte oder Bereiche (THRU) angegeben werden.

Beispiel

EVALUATE i
WHEN 1
   DISPLAY "i ist 1.",
WHEN 2 THRU 3
   DISPLAY "i ist 2,3.",
WHEN 4 THRU 6
   DISPLAY "i ist zw. 4 u. 6.",
WHEN OTHER
   DISPLAY "Falsch!",
END-EVALUATE


3. Schleifen (Iteration)

Schleifen dienen zur mehrmaligen Ausführung gleicher Programmteile. Verschachtelungen von Schleifen sind in allen Programmiersprachen beliebig weit möglich. Für die Verknüpfungen bzw. Klammerungen von Bedingungen gelten in den jeweiligen Programmiersprachen die selben Regeln wie bei den Verzweigungen (Selektion).
Begriffe


Laufbedingung:
Die Schleife wird durchlaufen, solange die Bedingung erfüllt ist
Abbruchbedingung:
Die Schleife wird durchlaufen, bis die Bedingung erfüllt ist.


Merkregel
Steht vor der Bedingung ein while, muß eine Laufbedingung angegeben werden.
(Ausnahme: In Cobol gibt es kein while)
Steht vor der Bedingung ein until, muß eine Abbruchbedingung angegeben werden

3.1 Bedingungsprüfung am Anfang

Da der Wert des Bedingungsausdruckes vor der Abarbeitung der Anweisung überprüft wird, ist es möglich, daß die Schleife überhaupt nicht durchlaufen wird.
C, C++, JAVA
C, C++, JAVA spezifische Anmerkungen
Syntax:

while (Laufbedingung)
{
   Anweisungsblock;
}

Zu beachten:

nichts

Beispiele
C/C++

while ( i < 10 )
{
   printf("%d ist kleiner 10\n",i);
   i++;
}

JAVA

while ( i < 10 )
{
   System.out.println(" " + i + " ist kleiner 10\n");
   i++;
}


Visual Basic
Visual Basic spezifische Anmerkungen
Syntax:

While Laufbedingung
   Anweisungsblock
Wend


Do While Laufbedingung
   Anweisungsblock
Loop


Do Until Abbruchbedingung
   Anweisungsblock
Loop

Zu beachten:

nichts

Beispiele

While i < 10
   Print i," ist kleiner als 10"
   i = i + 1
Wend

Do While i < 10
   Print i," ist kleiner als 10"
   i = i + 1
Loop

Do Until i = 10
   Print i," ist kleiner als 10"
   i = i + 1
Loop


Cobol 85
Cobol 85 spezifische Anmerkungen
Syntax:

PERFORM [WITH TEST BEFORE] UNTIL Abbruchbedingung
   Anweisung
END-PERFORM

Zu beachten:

WITH TEST BEFORE: Die Abbruchbedingung wird am Anfang der Schleife geprüft (Default; kann weggelassen werden).

Beispiel

PERFORM UNTIL i = 10
   DISPLAY i," ist kleiner 10"
   i = i + 1
END-PERFORM


3.2 Bedingungsprüfung am Ende

Die Schleife wird dabei auf jeden Fall mindestens einmal durchlaufen.
C, C++, JAVA
C,C++, JAVA spezifische Anmerkungen
Syntax:

do
{
   Anweisungsblock;
} while (Laufbedingung)

Zu beachten:

nichts

Beispiele
C/C++

do
{
   printf("%d ist kleiner 10\n",i);
   i++;
} while ( i < 10 )

JAVA

do
{
   System.out.println(" " + i + " ist kleiner 10\n");
   i++;
} while ( i < 10 )


Visual Basic
Visual Basic spezifische Anmerkungen
Syntax:

Do
   Anweisungsblock
Loop While Laufbedingung



Do
   Anweisungsblock
Loop Until Abbruchbedingung

Zu beachten:

nichts

Beispiele

Do
   Print i," ist kleiner als 10"
   i = i + 1
Loop While i < 10

Do
   Print i," ist kleiner als 10"
   i = i + 1
Loop Until i = 10


Cobol 85
Cobol 85 spezifische Anmerkungen
Syntax:

PERFORM WITH TEST AFTER UNTIL Abbruchbedingung
   Anweisung
END-PERFORM

Zu beachten:

WITH TEST AFTER: Die Abbruchbedingung wird am Ende der Schleife geprüft

Beispiel

PERFORM WITH TEST AFTER UNTIL i = 10
   DISPLAY i," ist kleiner 10"
   i = i + 1
END-PERFORM


3.3 Zählschleifen

Wenn im voraus bekannt ist, wie oft die Anweisungen zu wiederholen sind, werden Zählschleifen verwendet.
Es muß dabei immer ein Anfangswert (AW), Endwert (EW; bzw. Laufbedingung) und eine Schrittweite (SW) angegeben werden.
C, C++, JAVA
C, C++, JAVA spezifische Anmerkungen
Syntax:

for (AW;EW;SW)
{
   Anweisungsblock;
}

Zu beachten:

nichts

Beispiele
C/C++

for (i = 1; i < 10; i++)
{
   printf("%d ist kleiner 10\n",i);
}

JAVA

for ( i = 1; i < 10; i++)
{
   System.out.println(" " + i + " ist kleiner 10\n");
}


Visual Basic
Visual Basic spezifische Anmerkungen
Syntax:

For Laufvariable = AW To EW [Step SW]
   Anweisungsblock
Next [Laufvariable]

Zu beachten:

AW, EW, SW dürfen auch aus einem Ausdruck bestehen. Außerdem dürfen sie negativ sein oder aus einer beliebigen rationalen Zahl bestehen.
Ohne Angabe einer Schrittweite mit Step wird standardmäßig eine Schrittweite von 1 angenommen.
Laufvariable nach Next kann entfallen. Dadurch wird nur die Ausführungsgeschwindigkeit geringfügig erhöht.

Beispiel

For i = 1 to 9
   Print i," ist kleiner als 10"
Next


Cobol 85
Cobol 85 spezifische Anmerkungen
Syntax:

PERFORM VARYING Laufvariable FROM AW BY SW UNTIL Abbruchbedingung
   Anweisungsblock
END-PERFORM

Zu beachten:

Die Laufvariable darf in der Schleife nicht verändert werden.

Beispiel

PERFORM VARYING i FROM 1 BY 1 UNTIL i = 10
   DISPLAY i," ist kleiner 10"
END-PERFORM



Ende des Auszuges


Hier hast Du die Möglichkeit dieses Referat zubewerten
und somit die Gesamtbewertung mitzubestimmen!