„Übersetzung“ von Struktogrammen nach VBA

Transcription

„Übersetzung“ von Struktogrammen nach VBA
„Übersetzung“ von
Struktogrammen nach VBA
Einleitung
• Bezüglich der folgenden Folien ist für die
anstehende Klausur besonders wichtig:
– Die formelle Übersetzung der Struktogramme in
VBA-Code (Spalte "Struktogramme" zu Spalte
"VBA-Code" – die beide anderen Spalten sind
Zusatzinformationen und nicht klausurrelevant)
– In eckigen Klammern stehende Anweisungen in
der Spalte "VBA-Code" (z.B. [Exit Do]) sind
optional - können also, müssen aber nicht
verwendet werdend)
Einleitung
• Bezüglich der folgenden Folien ist für die
anstehende Klausur besonders wichtig:
– Beispiele für die Umsetzung von
Struktogrammen in VBA finden Sie bei den
klausurähnlichen Vorbereitungsaufgaben zu
VBA
– Die in den folgenden Folien erkennbaren
Einrückungen nach rechts (in den Spalten "VBACode" ) dienen der besseren Lesbarkeit und
sollten so auch verwendet werden
Verzweigung (Auswahl, Selektion)
Einseitige Verzweigung (ohne Else)
VB - Code
Pseudo - Code
Einzeilige Version:
Struktogramm
WAHR
If Bedingung then A
Wenn Bedingung dann A
(A = Anweisung)
(A = Anweisung)
Bedingung
FALSCH
FALSCH
Anweisung
Bedingung
Mehrzeilige Version:
If Bedingung then
Anweisung1
...
Anweisung_n
End If
PAP
WAHR
Wenn Bedingung dann
Anweisung1
...
Anweisung_n
Ende Wenn
WAHR
Bedingung
FALSCH
Anweisung1
Anweisung1
...
...
Anweisung_n
Anweisung_n
Verzweigung (Auswahl, Selektion)
Zweiseitige Verzweigung (mit Else)
VB - Code
If Bedingung then
Anweisung(en)
des If-Blockes
Else
Anweisung(en)
des Else-Blockes
End If
Pseudo - Code
Wenn Bedingung dann
Anweisung(en) des
Wenn-Blockes
Sonst
Anweisung(en) des
Sonst-Blockes
Ende Wenn
Struktogramm
WAHR
Bedingung
Anweisung(en)
des WAHRBlockes
PAP
FALSCH
Anweisung(en)
des FALSCHBlockes
WAHR
FALSCH
Bedingung
Anweisung(en)
des
WAHRBlockes
Anweisung(en)
des
FALSCHBlockes
Verzweigung (Auswahl, Selektion)
Mehrfachverzweigung (mit ElseIf)
Bedingung1
W
PAP
F
Bedingung2
W
F
Bedingung_n
W
Beding1
F
F
Anweisungen für
alle anderen Fälle
W
Anweisungen für
Bedingung_n = WAHR
Wenn Bedingung dann
Anweisung(en) des
Wenn-Blockes
SonstWenn Beding1 dann
Anweisung(en) des
1. SonstWenn-Blockes
SonstWenn Beding2 dann
Anweisung(en) des
2. SonstWenn -Blockes
SonstWenn Beding_n dann
Anweisung(en) des
n. SonstWenn -Blockes
...
Sonst
Anweisung(en) des
Sonst-Blockes
Ende Wenn
Struktogramm
Anweisungen für
Bedingung2 = WAHR
If Bedingung then
Anweisung(en)
des If-Blockes
ElseIf Beding1 then
Anweisung(en)
des 1. ElseIfBlockes
ElseIf Beding2 then
Anweisung(en)
des 2. ElseIfBlockes
ElseIf Beding_n then
Anweisung(en)
des n. ElseIfBlockes
...
Else
Anweisung(en)
des Else-Blockes
End If
Pseudo - Code
Anweisungen für
Bedingung1 = WAHR
VB - Code
W
Beding2
F
W
Beding_n
F
Anweisung(en)
für alle
anderen Fälle
Anweisung(en)
für Bed1 =
WAHR
Anweisung(en)
für Bed2 =
WAHR
Anweisung(en)
für Bed_n =
WAHR
Wiederholung (Schleifen, Iteration)
Bedingungsschleife, kopfgesteuert, Laufbedingung mit While (Solange)
VB - Code
Do While Bedingung
Anweisung1
Anweisung2
[Exit Do]
Anweisung_n
Loop
Pseudo - Code
Struktogramm
Solange Bedingung führe aus
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Solange Bedingung
oder
Solange Bedingung
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Wiederhole
Anweisung1
Anweisung2
PAP
Bedingung
FALSCH
WAHR
[Exit]
Anweisung1
Anweisung_n
Anweisung2
Anweisung_n
Wiederholung (Schleifen, Iteration)
Bedingungsschleife, kopfgesteuert, Abbruchbedingung mit Until (Bis)
VB - Code
Do Until Bedingung
Anweisung1
Anweisung2
[Exit Do]
Anweisung_n
Loop
Pseudo - Code
Bis Bedingung führe aus
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Struktogramm
Bis Bedingung
Anweisung1
Anweisung2
oder
Bis Bedingung
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Wiederhole
PAP
Bedingung
WAHR
FALSCH
[Exit]
Anweisung1
Anweisung_n
Anweisung2
Anweisung_n
Wiederholung (Schleifen, Iteration)
Bedingungsschleife, fußgesteuert, Laufbedingung mit While (Solange)
Do
VB - Code
Anweisung1
Anweisung2
[Exit Do]
Anweisung_n
Loop While Bedingung
FührePseudo
aus
- Code
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Solange Bedingung
Anweisung1
Struktogramm
PAP
Anweisung2
Anweisung1
[Exit]
Anweisung2
Anweisung_n
Anweisung_n
oder
Wiederhole
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Solange Bedingung
Solange Bedingung
WAHR
Bedingung
FALSCH
Wiederholung (Schleifen, Iteration)
Bedingungsschleife, fußgesteuert, Abbruchbedingung mit Until (Bis)
VB - Code
Do
Anweisung1
Anweisung2
[Exit Do]
Anweisung_n
Loop Until Bedingung
Pseudo - Code
Führe aus
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Bis Bedingung
Struktogramm
Anweisung1
Anweisung1
Anweisung2
Anweisung2
[Exit]
Anweisung_n
Anweisung_n
oder
Wiederhole
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Bis Bedingung
PAP
FALSCH
Bis Bedingung
Bedingung
WAHR
Wiederholung (Schleifen, Iteration)
Zählschleife
VB - Code
For i = Start to Ende
Anweisung1
Anweisung2
[Exit For]
Anweisung_n
Next i
Pseudo - Code
Für i =Start bis Ende
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Wiederhole
Struktogramm
PAP
Für i=Start bis Ende
WAHR
oder
Wiederhole n mal
Ende erreicht?
FALSCH
oder
Anweisung1
Anweisung1
Wiederhole n mal
Anweisung1
Anweisung2
[Exit]
Anweisung_n
Anweisung2
Anweisung2
[Exit]
Anweisung_n
Anweisung_n

Documents pareils