Kontrollstrukturen -- Entscheidungen, Abfragen und Fallunterscheidungen
|
|
- Viktor Gehrig
- vor 6 Jahren
- Abrufe
Transkript
1 Kontrollstrukturen -- Entscheidungen, Abfragen und Fallunterscheidungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling Hochschule Darmstadt Fachbereich Informatik WS 2013/14
2 Motivation Bisher sind alle unsere Programme sequentiell, d.h. Zeile für Zeile nacheinander abgearbeitet worden. Kontrollstrukturen dienen dazu, den Programmfluss so zu manipulieren, so dass an einer anderen Stelle im Programm mit der Ausführung fortgesetzt wird. Über lassen sich zur Laufzeit bestimmte Bedingungen prüfen und dazugehörige Aktionen realisieren. Es ist damit also nicht mehr länger gewährleistet, dass das Programm jede Programmzeile erreicht und abarbeitet. Auf der anderen Seite werden die Programme dadurch flexibler und der Programmierer kann auf die verschiedensten Eingaben und Situationen reagieren (robuster Code). Durch die Kenntnis von Boolescher Logik und deren Kombinationen lassen sich alle möglichen Fälle zu einer Bedingung mit entsprechenden Handlungsanweisungen ausstatten. 2 / 39
3 if-abfragen Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 3 / 39
4 if-abfragen Entscheidungen definieren Eine Entscheidung wird in ihrer einfachsten Form in C++ folgendermassen verwendet: if (Bedingung) Anweisung; Nur dann, wenn die Bedingung in Klammern den booleschen Wert true ergibt, wird die Anweisung ausgeführt, sonst nicht. Man kann auch sagen, dass die Bedingung wahr oder falsch ist bzw. die Abfrage zutrifft oder nicht. 4 / 39
5 if-abfragen Mehrere Anweisungen bei Entscheidungen ausführen Für den Fall, dass mehrere Anweisungen nach der erfolgreichen Prüfung der Bedingung ausgeführt werden sollen, so müssen diese in einem Block eingeschlossen sein. if (Bedingung) { Anweisung1; Anweisung2; AnweisungN; } Andernfalls kann es zu ungewünschten Nebeneffekten kommen: 1 if ( Bedingung ) 2 Anweisung1 ; 3 Anweisung2 ; Der Compiler wird beim Fehlen der geschweiften Klammern davon ausgehen, dass nur Anweisung1 zu der Abfrage gehört (die Einrückungen spielen keine Rolle für ihn). In diesem Fall wird Anweisung2 in Zeile 3 immer ausgeführt werden, egal, ob die Bedingung zutrifft oder nicht. 5 / 39
6 if-abfragen Fallstrick bei der Verwendung von Semikolon Die if-anweisung selbst benötigt kein Semikolon am Ende. Wird doch ein Semikolon nach der Bedingung eingefügt, so wird der Compiler das nicht als Fehler melden und das Programm übersetzen. Vorsicht mit dem Semikolon: if (Bedingung); Anweisung; In diesem Fall wertet der Compiler das Semikolon als das Ende der if-anweisung. Die nachfolgende Anweisung wird auf jeden Fall ausgeführt, ganz egal ob die Bedingung zutrifft oder nicht. 6 / 39
7 Bedingungen definieren Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 7 / 39
8 Bedingungen definieren Bedingungen mit Vergleichsoperatoren definieren Die Bedingung in der if-abfrage kann ein beliebiger Ausdruck sein, der entweder einen boolschen Wahrheitswert (true/false) oder nicht-null ergibt. Das bedeutet, dass der Ausdruck if (expression) die gleiche Bedeutung hat wie if (expression!= 0). Die folgenden Vergleichsoperatoren können verwendet werden: Operator Erläuterung Beispiel == liefert true, wenn beide Operanden gleich sind x == 2, für x = 2;!= ergibt true, falls beide Operatoren ungleich x!= 1 sind > ist true, sollte der linke Operand grösser als x > y der rechte sein >= wie oben, nur wird ebenfalls auf Gleichheit x >= y geprüft < true, wenn der linke Operand kleiner ist als x < y der rechte <= wie oben, nur wird ebenfalls auf Gleichheit geprüft x <= y 8 / 39
9 Bedingungen definieren Beispiel zu Vergleichsoperatoren Hier wird die Verwendung des Vergleichsoperators <= gezeigt, um das Alter abzufragen und basierend auf der Eingabe einen anderen Wert zurückzugeben. 1 # include <iostream > 2 using namespace std; 3 4 int main () { 5 int alter, returnwert = 0; 6 cout << " Bitte geben Sie ihr Alter in Jahren ein : "; 7 cin >> alter ; 8 if ( alter <= 17) 9 returnwert = 1; if ( alter == 100) 12 returnwert = -1; return returnwert ; 15 } Beachten Sie besonders den Unterschied zwischen dem Vergleich in Zeile 11 (==) und der Zuweisung in Zeile 12 mit nur einem =. Der Compiler akzeptiert auch Zuweisungen in der Bedingung einer if-abfrage, dies ist aber selten das, was man haben möchte! 9 / 39
10 Bedingungen definieren Vergleichen von char und string Zeichenketten und Strings lassen sich folgendermassen vergleichen. 1 # include <iostream > 2 # include <string > 3 using namespace std; 4 5 int main () { 6 char eingabezeichen ; 7 string eingabestring ; 8 9 cout << " Das Fragezeichen eingeben, um Hilfe zu erhalten : "; 10 cin >> eingabezeichen ; 11 if ( eingabezeichen ==? ) 12 cout << " Hilfe noch nicht implementiert "; cout << " Geben Sie Exit ein, um das Programm zu beenden : "; 15 cin >> eingabestring ; 16 if ( eingabestring == " Exit ") 17 cout << " Programm wird beendet!"; return 0; 20 } 10 / 39
11 Wenn dann sonst -Abfragen mit else Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 11 / 39
12 Wenn dann sonst -Abfragen mit else else-abschnitte Sollte die Bedingung einer if-abfrage nicht zutreffen, kann ein alternativer Pfad eingeschlagen werden. Dieser wird immer dann ausgeführt, wenn die Bedingung nicht zutrifft und stellt dadurch eine Alternative dar, womit dann Wenn irgendetwas, dann x sonst y Verzweigungen im Programm ermöglicht werden. Die Syntax dazu lautet allgemein: Einzelne Anweisung ausführen: 1 if ( Bedingung ) 2 Anweisung ; 3 else 4 Anweisung ; Mehrere Anweisungen ausführen: 1 if ( Bedingung ) { 2 Anweisungen ; 3 } 4 else { 5 Anweisungen ; 6 } Natürlich lassen sich diese beiden Arten auch kombinieren, so dass bei einem else-abschnitt nur eine Anweisung stehen kann, während die if-abfrage mehrere Befehle ausführt, welche in geschweifte Klammern eingeschlossen sind und umgekehrt. 12 / 39
13 Wenn dann sonst -Abfragen mit else Hörsaalübung Schreiben Sie ein Programm, dass den Benutzer nach seinem Alter fragt. Ist der Benutzer mindestens 18 Jahre alt, so soll eine Begrüssungsmeldung ausgegeben werden. Falls das Alter noch nicht erreicht wurde, soll eine Meldung den Anwender darauf hinweisen, dass das Programm erst mit 18 Jahren benutzt werden darf. Verwenden Sie einen geeigneten Vergleichsoperator in einem if else-konstrukt und definieren Sie geeignete Variablentypen. 13 / 39
14 Wenn dann sonst -Abfragen mit else Eine mögliche Lösung zur Hörsaalübung 1 # include <iostream > 2 # include <string > 3 using namespace std; 4 5 int main () { 6 unsigned int alter ; 7 string nachricht ; 8 9 cout << " Bitte geben Sie ihr Alter ein: "; 10 cin >> alter ; if ( alter >= 18) 13 nachricht = " Willkommen!\n"; 14 else 15 nachricht = " Sie sind leider noch nicht alt genug!\n"; cout << nachricht ; 18 return 0; 19 } 14 / 39
15 Wenn dann sonst -Abfragen mit else Der Operator zur bedingten Bewertung Es gibt einen speziellen Operator der eine verkürzte Schreibweise zur bedingten Bewertung ermöglicht. Die allgemeine Syntax lautet: Ausdruck? Ausdruck_wahr : Ausdruck_falsch 1 int zahl ; 2 cout << " Bitte geben Sie eine Zahl ein: "; 3 cin >> zahl ; 4 cout << zahl << " ist " << ( zahl %2 == 0? " eine " : " keine ") << " gerade Zahl!"; Bei der Verwendung dieses Operators ist Vorsicht geboten, denn der Code der dadurch entsteht, kann schnell unleserlich werden. Benutzen Sie stattdessen das if else-konstrukt, wenn Sie die Übersicht verlieren. 15 / 39
16 Wenn dann sonst -Abfragen mit else Verschachtelung von if else Es lassen sich auch mehrere if Konstrukte ineinander mit den dazugehörigen else-abschnitten verschachteln. 1 if (x < 100) { 2 if (x == 50) { } else { } 7 } Es muss immer klar geregelt sein, zu welchem if ein else gehört. Daher gilt die Regel, dass ein else immer zum unmittelbar vorherigen if gehört, wobei die Blockstruktur zu beachten ist. 1 if (n > 0) 2 if (a > b) 3 z = a; 4 else 5 z = b; 1 if (n > 0) { 2 if (a > b) 3 z = a; 4 } 5 else 6 z = b; 16 / 39
17 Wenn dann sonst -Abfragen mit else Die else if Bedingung Es lassen sich mehrere Bedingungen nacheinander abprüfen, indem das else if (Bedingung)-Konstrukt verwendet wird. 1 if (x < 100) { } else if (y > 0) { } else { 6 // in allen anderen Faellen 7 } In diesem Fall lassen sich mehrere Bedingungen nacheinander abprüfen, die der Reihe nach ausgewertet werden. Falls keine dieser Bedingungen zutrifft, kann optional ein letztes else die übrigen Fälle abhandeln. 17 / 39
18 Mehrere Bedingungen prüfen mit booleschen Funktionen Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 18 / 39
19 Mehrere Bedingungen prüfen mit booleschen Funktionen Prüfen mehrerer Bedingungen auf einmal In der if-bedingung können nicht nur eine, sondern beliebig viele Bedingungen geprüft werden. Da hier alle Aussagen entweder true oder false ergeben, entstehen verschiedene Kombinationen von Wahrheitswerten, die sich Mithilfe von Booleschen Funktionen miteinander verknüpfen lassen. So wird gewährleistet, dass alle möglichen Ergebnisse dieser Ausdrücke auch entsprechend abgearbeitet werden. Aus diesem Grund ist es wichtig, Boolesche Grundfunktionen zu kennen, um die richtige Verknüpfungsart in der if-bedingung zu wählen. 19 / 39
20 Mehrere Bedingungen prüfen mit booleschen Funktionen Logische Verknüpfungen Da wir nur boolesche Werte mit true und false betrachten, lassen sich sogenannte Wahrheitstabellen für deren Kombinationen miteinander aufstellen. Durch eine Wahrheitstabelle wird eine logische Verknüpfung mit mehreren Eingangssignalen zu einem (oder mehreren) Ausgangssignalen definiert. Durch die darin enthaltenen logischen Zusammenhänge zwischen Ein- und Ausgangssignalen erhält man die Gesetzmäßigkeiten dieser Verknüpfung. Allgemein lautet die Syntax für mehrere logische Verknüpfungen: (Bedingung1 Logische_Verknüpfung Bedingung2) Welche verschiedenen Verknüpfungstypen und Kombinationsmöglichkeiten es gibt wollen wir uns nun ansehen. 20 / 39
21 Mehrere Bedingungen prüfen mit booleschen Funktionen Die OR-Verknüpfung Wenn mindestens einer der beiden Ausdrücke true ist, dann ergibt auch der Zielwert true und es handelt sich um eine OR (Oder) Verknüpfung, die in C++ mit definiert wird. false false = false 21 / 39
22 Mehrere Bedingungen prüfen mit booleschen Funktionen Die OR-Verknüpfung Wenn mindestens einer der beiden Ausdrücke true ist, dann ergibt auch der Zielwert true und es handelt sich um eine OR (Oder) Verknüpfung, die in C++ mit definiert wird. false false = false false true = true 21 / 39
23 Mehrere Bedingungen prüfen mit booleschen Funktionen Die OR-Verknüpfung Wenn mindestens einer der beiden Ausdrücke true ist, dann ergibt auch der Zielwert true und es handelt sich um eine OR (Oder) Verknüpfung, die in C++ mit definiert wird. false false = false false true = true true false = true 21 / 39
24 Mehrere Bedingungen prüfen mit booleschen Funktionen Die OR-Verknüpfung Wenn mindestens einer der beiden Ausdrücke true ist, dann ergibt auch der Zielwert true und es handelt sich um eine OR (Oder) Verknüpfung, die in C++ mit definiert wird. false false = false false true = true true false = true true true = true 21 / 39
25 Mehrere Bedingungen prüfen mit booleschen Funktionen Beispiel zur Oder-Verknüpfung In einem vorherigen Beispiel hatten wir bemerkt, dass es einen Unterschied macht, ob ein Zeichen in Gross- oder in Kleinbuchstaben eingegeben und anschliessend den Vergleich angestellt wird. Wir wollen in diesem Beispiel dafür sorgen, dass sowohl x als auch X erkannt und in den entsprechenden Pfad verzweigt wird. Hierzu eignet sich die Oder-Verknüpfung: 1 char eingabe ; 2 cout << " Bitte druecken Sie X zum beenden : "; 3 cin >> eingabe ; 4 if ( eingabe == X eingabe == x ) 5 cout << " Programm wird beendet!\n"; 6 else 7 cout << " Programm wird fortgesetzt...\ n"; Zeile 4 kann so gelesen werden: Wenn die Variable eingabe den Wert X oder den Wert x hat, dann ist die if-bedingung erfüllt (true). Generell erlaubt die Oder-Verknüpfung mehr Zustände, die true ergeben. Es genügt, wenn nur einer von mehreren mit oder verknüpften Ausdrücken true ist, um die ganze Aussage mit true zu bewerten. 22 / 39
26 Mehrere Bedingungen prüfen mit booleschen Funktionen Die AND-Verknüpfung Bei der AND (Und) Verknüpfung ist der Ausgangswert nur dann true, falls alle Eingänge den Wert true besitzen. Mit && werden die einzelnen Bedingungen im Quellcode verknüpft. false && false = false 23 / 39
27 Mehrere Bedingungen prüfen mit booleschen Funktionen Die AND-Verknüpfung Bei der AND (Und) Verknüpfung ist der Ausgangswert nur dann true, falls alle Eingänge den Wert true besitzen. Mit && werden die einzelnen Bedingungen im Quellcode verknüpft. false && false = false false && true = false 23 / 39
28 Mehrere Bedingungen prüfen mit booleschen Funktionen Die AND-Verknüpfung Bei der AND (Und) Verknüpfung ist der Ausgangswert nur dann true, falls alle Eingänge den Wert true besitzen. Mit && werden die einzelnen Bedingungen im Quellcode verknüpft. false && false = false false && true = false true && false = false 23 / 39
29 Mehrere Bedingungen prüfen mit booleschen Funktionen Die AND-Verknüpfung Bei der AND (Und) Verknüpfung ist der Ausgangswert nur dann true, falls alle Eingänge den Wert true besitzen. Mit && werden die einzelnen Bedingungen im Quellcode verknüpft. false && false = false false && true = false true && false = false true && true = true 23 / 39
30 Mehrere Bedingungen prüfen mit booleschen Funktionen Beispiel zur Und-Verknüpfung In diesem Beispiel wird eine Bereichsüberprüfung für die Eingabe vorgenommen. Durch eine untere und obere Grenze wird der Wertebereich festgelegt. Somit müssen alle eingegebenen Werte sowohl grösser als der untere, als auch kleiner als der obere Bereich sein. 1 unsigned int zahl ; 2 cout << " Bitte eine ganze Zahl zwischen 1 und 100 eingeben : "; 3 cin >> zahl ; 4 if ( zahl >= 1 && zahl <= 100) 5 cout << " Die Zahl befindet sich im Wertebereich!"; 6 else 7 cout << " Die Zahl ist ausserhalb des Wertebereichs."; Die Und Verknüpfung ist restriktiver, weil diese nur den Wahrheitswert true ergibt, wenn alle Bedingungen zutreffen, was nicht oft der Fall ist. Sobald auch nur eine davon mit false ausgewertet wird, kann die Gesamtbedingung nicht mehr true werden. 24 / 39
31 Fallunterscheidungen Das switch-statement Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 25 / 39
32 Fallunterscheidungen Das switch-statement Motivation Oftmals müssen in einem Programm Eingabewerte auf verschiedene Zielwerte geprüft werden. Ein typisches Beispiel ist ein Menü das verschiedene Funktionalitäten hinter Zahlen bereitstellt: 1) Neues Spiel 2) Spiel speichern 3) Spiel laden 4) Einstellungen 5) Spiel beenden Eingabe: Die Aufgabe ist nun, herauszubekommen, welche Zahl der Benutzer ausgewählt hat und entsprechend darauf zu reagieren. Es kann zwar ein grosses Konstrukt mit mehreren if else-anweisungen diese Aufgabe lösen, allerdings wird dieses mit der Zeit unübersichtlich, je grösser das Menü wird. Für diese Art von Fallunterscheidungen existiert in vielen Programmiersprachen ein eigenes Konstrukt. 26 / 39
33 Fallunterscheidungen Das switch-statement Fallunterscheidung mit switch Um mehrere mögliche Ergebnisse mit einem eigenen Pfad abzudecken, eignet sich das switch case-statement. In der allgemeinen Form hat es folgenden Aufbau: switch (Ausdruck) { case const1: Anweisung(en)1; break; case const2: Anweisung(en)2; break; default: Anweisung(en); break; } Der Ausdruck wird evaluiert und abhängig von dessen Wert wird in den entsprechenden case-abschnitt verzweigt. Mit break wird dieser Zweig beendet, es ist also die letzte Anweisung und springt dann aus dem switch-konstrukt. Für den Fall, dass keiner der Pfade auf den Ausdruck zutrifft, kann ein optionaler default-pfad alle übrigen Fälle abhandeln. 27 / 39
34 Fallunterscheidungen Das switch-statement Beispiel zum switch case 1 # include <iostream > 2 using namespace std; 3 4 int main () { 5 char menuewahl ; 6 cout << "1) Vorspeise " << endl ; 7 cout << "2) Hauptgang " << endl ; 8 cout << "3) Nachspeise " << endl ; 9 cout << "4) Keinen Appetit " << endl ; 10 cin >> menuewahl ; 11 switch ( menuewahl ) { 12 case 1: cout << " Als Vorspeise gibt es..."; 13 break ; 14 case 2: cout << " Der Hauptgang beinhaltet... "; 15 break ; 16 case 3: cout << " Zum Dessert servieren wir... "; 17 break ; 18 default : cout << " Dann vielleicht morgen... "; 19 break ; 20 } 21 return 0; 22 } 28 / 39
35 Fallunterscheidungen Das switch-statement Hinweise zum switch-statement Die Konstanten in den case-abschnitten müssen nicht fortlaufend aufgelistet werden, sondern können eine beliebige Reihenfolge haben. 1 switch ( zahl ) { 2 case 17: cout << " Siebzehn "; 3 break ; 4 case 4: cout << " Vier "; 5 break ; 6 } Es ist jedoch übersichtlicher, diese geordnet der Reihe nach aufzulisten. Achtung: In den case-marken dürfen nur Konstanten und keine Variablen benutzt werden. Der folgende Code wird deshalb vom Compiler mit einer Fehlermeldung in Zeile 3 quittiert: 1 int x = 2; 2 switch ( zahl ) { 3 case x/2: cout << "x/2"; 4 break ; 5 } 29 / 39
36 Fallunterscheidungen Das switch-statement Gezieltes Auslassen von break Wird das break in den case-abschnitten vergessen, so wird die darunterliegende Marke ebenfalls abgearbeitet. Dies passiert so lange, bis entweder das nächste break erreicht wird oder das gesamte switch-statement beendet ist. Obwohl dieser Fall meist unerwünscht ist, lässt sich diese Funktionalität trotzdem nützlich einsetzen, um andere Pfade ebenfalls mit abzulaufen. 1 char eingabe ; 2 cout << " Geben Sie X zum beenden ein.\n"; 3 cin >> eingabe ; 4 switch ( eingabe ) { 5 case X : ; // keine Funktion, nutzt naechste case - Marke 6 case x : cout << " Programm wird beendet "; 7 break ; 8 } Das Beispiel zeigt, dass im Menü sowohl bei der Eingabe von X als auch bei x die gleiche Funktionalität aufgerufen wird, da das break nach Zeile 5 absichtlich weggelassen wurde und dadurch die Verarbeitung bei der nächsten case-marke fortfährt. 30 / 39
37 Visualisierung des Programmablaufs Überblick 1 if-abfragen Bedingungen definieren Wenn dann sonst -Abfragen mit else Mehrere Bedingungen prüfen mit booleschen Funktionen 2 Fallunterscheidungen Das switch-statement 3 Visualisierung des Programmablaufs 31 / 39
38 Visualisierung des Programmablaufs Motivation Durch die Verzeigungsmöglichkeiten, die wir in diesem Abschnitt kennengelernt haben, ist der Programmfluss nicht mehr linear (zeilenweise). Aus diesem Grund macht es Sinn, für die weitere Programmierung den Programmfluss zu visualisieren. Gerade, wenn die Programm grösser und komplexer werden, sollten diese vorher skizziert werden, um z.b. zu gewährleisten, dass alle Pfade in if else auch mit Programmlogik versehen sind. Bevor wir also an das Erstellen von Programmtext in der IDE gehen, sollte der Programmfluss und Ablauf strukturiert sein. Ist dieser erstmal klar, ist die Übertragung in Programmcode nicht mehr allzu schwierig. Mitteln DIN-genormter Diagramme können wir für uns und andere Programmierer unsere Gedanken zum Programmablauf als Entwurfsmethode strukturiert darstellen. Eine solche Diagrammart sind sogenannte Struktogramme nach DIN / 39
39 Visualisierung des Programmablaufs Regeln für die Erstellung von Struktogrammen Die folgenden Regeln gelten für die Erstellung von Struktogrammen: Anweisungsexklusivität Jede Anweisung erhält einen eigenen Block, um die Übersichtlichkeit zu erhalten. Beispiel: Sprachunabhängig Es wird keine programmiersprachliche Syntax verwendet, da man sich zu diesem Zeitpunkt erst um den Algorithmus im Klaren sein sollte, als um die Frage, mit welcher Sprache dies geschehen soll. Die so dargestellte Logik sollte möglichst einfach zu verstehen sein, z.b. zaehler um eins erhöhen. Es handelt sich dabei also um Pseudocode. Deklarationslosigkeit In einfachen Struktogrammen werden keine Variablen- und Konstantendeklarationen als Anweisungen beschrieben. Es soll durch das Diagramm der Ablauf und die Struktur des Programms ersichtlich werden. 33 / 39
40 Visualisierung des Programmablaufs Linearer Programmablauf als Struktogramm Jede Anweisung wird im Struktogramm als separates Kästchen gezeichnet. Lineare Programme werden wie folgt dargestellt: Der Programmablauf beginnt oben und wird nach unten hin durchlaufen. Ein leerer Strukturblock ist nur in Verzweigungen möglich. 34 / 39
41 Visualisierung des Programmablaufs Einfache Verzweigungen mit Struktogrammen darstellen Eine einfache if-abfrage kann mit einem Struktogramm folgendermassen dargestellt werden: Da es keinen else-abschnitt gibt, wird die rechte Seite (Nein) leer bleiben. Beispiel 35 / 39
42 Visualisierung des Programmablaufs Zweifache Verzweigungen mit Struktogrammen darstellen Eine if else-abfrage wird mit gefülltem Nein-Abschnitt beschrieben: Beispiel 36 / 39
43 Visualisierung des Programmablaufs Verschachtelte Abfragen mit Struktogrammen darstellen Verschachtelte if-else Abfragen lassen sich durch die konsequente Anwendung der bisherigen Regeln ebenfalls visualisieren. Beispiel Natürlich ist sowohl nur im Nein-Abschnitt als auch in beiden (Ja und Nein) eine Verschachtelung möglich. 37 / 39
44 Visualisierung des Programmablaufs Fallunterscheidungen mit Struktogrammen beschreiben Das switch case-statement lässt sich inklusive dem optionalen default-abschnitt so darstellen: Beispiel Weitere Darstellungsmöglichkeiten werden wir im Laufe der Vorlesung noch kennenlernen. 38 / 39
45 Visualisierung des Programmablaufs Struktogrammeditoren Es existieren eine Reihe von Editoren zur Erstellung von Struktogrammen. Ein paar davon sind hier aufgeführt: / 39
Kontrollstrukturen -- Schleifen und Wiederholungen
Kontrollstrukturen -- Schleifen und Wiederholungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrJava Anweisungen und Ablaufsteuerung
Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.
Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Erklären
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.
Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben
MehrEinführung in die Programmierung Wintersemester 2011/12
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while
MehrGrundlagen der Informatik 4. Kontrollstrukturen I
4. Kontrollstrukturen I Anweisungen und Blöcke Grundlagen der Informatik (Alex Rempel) 1 Anweisungen und Blöcke Anweisungen ("statements") Immer mit Semikolon abzuschließen "Leere" Anweisung besteht aus
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
Mehr5. Elementare Befehle und Struktogramme
5. Elementare Befehle und Struktogramme Programmablauf Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme Dr. Norbert Spangler / Grundlagen
MehrVariablen, Konstanten und Datentypen
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Variablen, Konstanten und Datentypen Überblick
MehrOperatoren und Ausdrücke
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 11 Motivation Es gibt eine Reihe
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2017/18 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for
Mehr4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen
. Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit
MehrEntscheidungen. INE1, Montag M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Entscheidungen INE1, Montag M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Ablaufstrukturen bis jetzt nur Sequenzen von Code neu Auswahl (Programmverzweigung) - Code aufgrund
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung
Mehr4. Verzweigungen. Prof. Dr. Markus Gross Informatik I für D-ITET (WS 03/04)
4. Verzweigungen Prof. Dr. Markus Gross Informatik I für D-ITET (WS 03/04)!Ausdruck und Anweisungen!Verkürzte Operatoren, Vergleichsoperatoren!Die if Anweisung!Die if else Anweisung!Logische Operatoren
MehrTag 2 Repetitorium Informatik (Java)
Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrDas diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen
Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser
MehrEin- und Ausgabe (I/O)
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 14 Motivation Computer arbeiten
MehrC# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen
C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden
MehrJava Ablaufsteuerung (Beispiele)
Informatik 1 für Nebenfachstudierende Grundmodul Java Ablaufsteuerung (Beispiele) Kai-Steffen Hielscher Folienversion: 16. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Blöcke Anweisungen
MehrArbeitsblätter für Algorithmierung und Strukturierung
Prof. Dr.- Ing. Ch. Wahmkow Fachbereich Maschinenbau Fachhochschule Stralsund Arbeitsblätter für Algorithmierung und Strukturierung Inhalt : Struktogramme, Beispiele und Erläuterungen - Sequenz - vollständige
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29
Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente
MehrGedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.
Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit
MehrBedingte Anweisungen
Bedingte Anweisungen Bedingte Anweisungen werden nicht immer ausgeführt, sondern nur, wenn eine Bedingung erfüllt (wahr) ist. C/C++/Java bieten hier 2 Konstruktionen an: if-anweisung sowie switch-case
MehrGrundlagen der Programmentwicklung
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Über C++ Über C++ C++ ist eine in der Industrie
MehrÜbung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil
MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches
MehrIntensivübung zu Algorithmen und Datenstrukturen
Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
MehrAlgorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration
Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)
MehrÜbung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil
MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches
MehrAnnehmende Schleife do while
Annehmende Schleife do while Schleife mit nachfolgender Bedingungsprüfung: annehmende Schleife B S Mit B wird eine Bedingung (logischer Ausdruck) bezeichnet, S ist ein Strukturblock. Zuerst wird S ausgeführt,
MehrProgrammsteuerung mit PHP - if/else, elseif,switch
Programmsteuerung mit PHP - if/else, elseif,switch Bei der Programmierung geht es meist vor allem darum festzulegen, welche Aktionen wie oft unter welchen Bedingungen ausgeführt werden sollen. Hierzu steht
MehrProgrammierkurs Java
Programmierkurs Java Kontrollstrukturen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Kontrollstrukturen Wichtig: bedingte Ausführung
MehrProgrammieren lernen mit Visual Basic
Programmieren lernen mit Visual Basic Teil 5: Fallunterscheidungen (Teil 1) Ein paar Operatoren fehlen noch. Zum einen logische Operatoren, die mit Wahrheitswerden arbeiten. Die folgenden drei verwenden
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der
MehrKontrollstrukturen Blöcke / Schleifen / Bedingungen
Kontrollstrukturen Blöcke / Schleifen / Bedingungen 1 Einfache Anweisungen und Blöcke einfache Anweisung abgeschlossen mit Semikolon ; typische Fälle: o Deklaration, Zuweisung, Funktionsaufruf Sonderfall
MehrSchleifen in C/C++/Java
Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.
MehrVom Problem zum Programm
Aussagenlogik Vom Problem zum Programm Kontrollstrukturen der prozeduralen Programmierung Grundprinzipien: Sequenz Alternative Iteration Beschreibungsformen Ablaufpläne Struktogramme Pseudocode Programmentwicklung
MehrBKTM - Programmieren leicht gemacht.
BKTM Programmieren leicht gemacht. + Struktogramm Das Struktogramme ist eine Entwurfsmethode für die strukturierte Programmierung. Es ist nach der DIN 66261 genormt. Es ist 1972/73 von Dr. Isaac Nassi
MehrEINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15
EINI LW/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
MehrKompaktkurs Einführung in die Programmierung. 4. Kontrollstrukturen
Kompaktkurs Einführung in die Programmierung 4. Kontrollstrukturen Stefan Zimmer 28.2.2008-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon ist
MehrEinführung in die Programmierung II. 3. Kontrollstrukturen
Einführung in die Programmierung II 3. Kontrollstrukturen Thomas Huckle, Stefan Zimmer 2.5.2007-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon
MehrVorkurs Informatik WiSe 16/17
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016
MehrEINI WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12
EINI WiMa Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de
MehrVerzweigungen. Prof. Dr. Markus Gross Informatik I für D-MAVT (FS 2014)
Verzweigungen Prof. Dr. Markus Gross Informatik I für D-MAVT (FS 2014) Ausdruck und Anweisungen Verkürzte Operatoren, Vergleichsoperatoren Die if Anweisung Die if else Anweisung Die switch Anweisung Logische
MehrKontrollstrukturen und Logik
Programmieren mit Java Modul 2 Kontrollstrukturen und Logik Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 1.1 Anweisungen und Blöcke........................... 3 2 Operatoren (Teil II) 4 2.1 Relationale
MehrEinstieg in die Informatik mit Java
Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for
MehrÜbungspaket 9 Logische Ausdrücke
Übungspaket 9 Logische Ausdrücke Übungsziele: Skript: 1. Umgang mit logischen Vergleichs- und Verknüpfungsoperatoren 2. Bilden einfacher und komplexer logischer Ausdrücke Kapitel: 22 Semester: Wintersemester
MehrInformatik für Elektrotechnik und Informationstechnik
Informatik für Elektrotechnik und Informationstechnik Praktikum 1 Wintersemester 2013/14 1 Kennenlernen der Entwicklungsumgebung Netbeans Netbeans ist eine moderne Entwicklungsumgebung für mehrere Programmiersprachen,
Mehrif ( Logischer Operator ) { } else { Anweisungen false
if ( Logischer Operator ) { Anweisungen true else { Anweisungen false Bedingte Anweisungen Operatoren verknüpfen Variable zu neuen Ausdrücken, wir unterscheiden Arithmetische Operatoren Berechnung von
MehrAlgorithmen und Datenstrukturen (für ET/IT)
Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2016 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Grundlagen von Algorithmen
MehrAusdrücke (1) Grundlegende Eigenschaften
Ausdrücke () Grundlegende Eigenschaften bestehen aus Literalen, Konstanten, Variablen und Operatoren einfachster Ausdruck ist das Semikolon, es bewirkt nichts. Ausdrücke werden mit einem Semikolon abgeschlossen.
MehrEinstieg in die Informatik mit Java
1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,
MehrArbeitsblätter für Algorithmierung und Strukturierung C #
Prof. Dr.- Ing. Ch. Wahmkow Fachbereich Maschinenbau Fachhochschule Stralsund Arbeitsblätter für Algorithmierung und Strukturierung C # Inhalt : Struktogramme, Beispiele und Erläuterungen - Sequenz - vollständige
MehrEinstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
MehrInstitut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke
Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie
MehrProgramm heute. Algorithmen und Datenstrukturen (für ET/IT) Definition Algorithmus. Wie beschreibt man Algorithmen?
Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2015 1 Einführung Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 2 Grundlagen von Algorithmen
MehrVorkurs Informatik WiSe 17/18
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Geben
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine
Mehr4.4 Imperative Algorithmen Prozeduren
4.4.2 Prozeduren Der Wert eines Ausdrucks u in Zustand z Z lässt sich damit auch leicht definieren (jetzt W Z statt W σ ) Dazu erweitern wir die rekursive Definition von Folie 57 (Wert eines Ausdrucks):
Mehr1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.
Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten
Mehr12 == 12 true 12 == 21 false 4 === 7 true 4 === "vier" false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false
Die if-anweisung if (Bedingung 1) { Code 1 else { Code 2 ; Anm.1: Das ; kann entfallen, da innerhalb { ein sog. Codeblock geschrieben wird. Anm.2: Es gibt noch andere Schreibweisen, aber wir wollen uns
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 4. November 2015 Administratives Zur Abgabe von Übungsaufgaben Nein, wir
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung
MehrEINI LogWing/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 17/18
EINI LogWing/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 17/18 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrFunktionales C++ zum Ersten
Funktionales C++ zum Ersten WiMa-Praktikum 1, Teil C++, Tag 1 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: christoph.ott@uni-ulm.de Institut für Angewandte Informationsverarbeitung 26.08.08
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Zeigern, sowie Records und Funktionen Aufgabe 5: Diese Aufgabe basiert auf der Aufgabe 4. Es ist ein Programm zu erstellen, in welchem der Anwender aus einer Anzahl möglicher
MehrSchachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A
2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik
Seite 1 von 7 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben
MehrZiele sind das Arbeiten mit Funktionen (Modularisierung, Parameterübergabe), sowie - Reihentyp (Array)
Ziele sind das Arbeiten mit Funktionen (Modularisierung, Parameterübergabe), sowie - Aufgabe 3: Diese Aufgabe baut auf der 2. Aufgabe auf und erweitert diese. Die Funktionalität der 2. Aufgabe wird also
MehrJava I Vorlesung Imperatives Programmieren
Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.
MehrWiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe
Informatik Vorlesung 03b Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe 12. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik
MehrGrundlagen von C# - 2
Grundlagen von C# - 2 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Arrays 2. Kontrollstrukturen 3. Verzweigungen Bedingte Verzweigung (if else) 4. Schleifen Kopfgesteuerte Schleife (while) Fußgesteuerte
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration
MehrÜbungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.
Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrGrundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen.
Grundlegende Programmstrukturen Seite 1 von 14 Grundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen. Sequenzen Eine Sequenz ist eine Folge von en (sblock) ohne Verzweigungen. Der
MehrKontrollstrukturen (1)
Kontrollstrukturen (1) Selektionen, if ermöglicht das alternative Ausführen von Programteilen in Abhängigkeit einer Bedingung if (Bedingung) Block 1 else Block 2 Ist die Bedingung wahr, also ungleich 0,
Mehr