Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration
|
|
- Mathias Kästner
- vor 7 Jahren
- Abrufe
Transkript
1 Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration
2 Selektion
3 Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if ( Ausdruck ) Anweisung1 else Anweisung2 Allerdings ist diese Variante nur ein Spezialfall des allgemeineren Konzepts Selektion, denn es wird in Abhängigkeit des Ergebnisses der Auswertung von Ausdruck aus genau zwei Varianten selektiert: Anweisung1 (bei true) oder Anweisung2 (bei false) Kennzeichen der Selektion Anzahl zu selektierender Varianten Relation zu selektierenden Varianten Selektionskriterien 319
4 Selektion Bedingte Anweisung Die einfachste Form einer Selektion wird auch als unvollständige Selektion bezeichnet: if ( Ausdruck ) Anweisung Besonderes Merkmal Die bedingte Anweisung besitzt keinen else-zweig. Ablauf Anweisung wird nur ausgeführt, wenn Ausdruck nach true ausgewertet werden kann. Wenn Ausdruck nach false ausgewertet wird, spielt das für die weitere Abarbeitung keine Rolle. 320
5 Unvollständige Selektion Beispiel Webshop Sie möchten ein Buch kaufen und können sich nach der Wahl des Buches für den kostenlosen Standardversand oder den schnellen, aber 5 teuren Expressversand entscheiden. int Betrag() { int summe; bool zuschlag; summe = 59; zuschlag = true; if (!zuschlag) return summe; else summe += 5; return summe; } Dr. Frank Seifert Anzahl Artikel 1 Preis 59 Expresszuschlag 5 Summe 64 Vorlesung Algorithmen & Programmierung WS 2015/2016 int Betrag() { int summe; bool zuschlag; summe = 59; zuschlag = true; if (zuschlag) summe += 5; return summe; } 321
6 Geschachtelte Selektionen Selektionen können geschachtelt werden. Dabei wird statt der auszuführenden Anweisung wieder eine Selektion eingesetzt. Dieser Vorgang kann beliebig oft wiederholt werden: Beispiel für geschachtelte vollständige Selektionen if ( Ausdruck1 ) if ( Ausdruck2 ) Anweisung1 else Anweisung2 else if ( Ausdruck3 ) Anweisung3 else Anweisung4 Wenn der Wert von Ausdruck1 zu true korrespondiert, dann wird in Abhängigkeit der Auswertung von Ausdruck2 entweder Anweisung1 oder Anweisung2 ausgeführt. sonst (Wenn der Wert von Ausdruck1 zu false korrespondiert) wird in Abhängigkeit der Auswertung von Ausdruck3 entweder Anweisung3 oder Anweisung4 ausgeführt. 322
7 Geschachtelte Selektionen Problem Da statt vollständiger Selektionen auch unvollständige Selektionen geschachtelt werden können, taucht die Frage auf, wie bei gemischten vollständigen und unvollständigen Selektionen die Zuordnung durchgeführt wird. Regel Ein else-zweig gehört immer zum letzten if-statement. Achtung Der Compiler ordnet einen else-zweig immer nach obiger Regel zu. Wenn andere Zuordnungen gewünscht sind, muss dies durch Blockbildung erzwungen werden. Dies ist eine häufige Fehlerquelle, die oft (z.b. aufgrund manuell vorgenommener falscher Einrückungen) schwer zu entdecken ist. Abhilfe Anweisungen geschachtelter Selektionen sollten besser immer in Blöcken eingebettet werden. 323
8 Mehrfachselektion Spezialfall geschachtelter Selektionen Werden Selektionen nur im else-zweig geschachtelt, spricht man von Mehrfachselektionen. Anwendung Mehrfachselektionen dienen zur Modellierung von mehr als zwei Zuständen. Ablauf Ist Ausdruck1 erfüllt wird Anweisung1 ausgeführt, sonst wird Ausdruck2 getestet und gegebenenfalls Anweisung2 ausgeführt usw., d.h. nur wenn ein Ausdruck false ergibt, wird die Mehrfachselektion weiter abgearbeitet. Falls keine Bedingung in der Mehrfachselektion gültig ist, wird die optionale Anweisungn+1 ausgeführt. if (Ausdruck1) Anweisung1 else if (Ausdruck2) Anweisung2 else if (Ausdruck3) Anweisung3 else if (Ausdruckn) else Anweisungn Anweisungn+1 324
9 Mehrfachselektion - Schreibweise Statt der links dargestellten unübersichtlichen Form verwendet man meist die rechts gezeigte Variante: if (Ausdruck1) Anweisung1 else if (Ausdruck2) Anweisung2 else if (Ausdruck3) Anweisung3 else if (Ausdruckn) else Anweisungn Anweisungn+1 if (Ausdruck1) Anweisung1 else if (Ausdruck2) Anweisung2 else if (Ausdruck3) Anweisung3 else if (Ausdruckn) Anweisungn else Anweisungn+1 325
10 Mehrfachselektion - Spezialfall Häufige Situation Die Mehrfachselektion basiert nur auf verschiedenen Werten derselben Variable oder desselben Ausdrucks. Alternative Verwendung des nebenstehend dargestellten switch-statements anstelle der Mehrfachselektion. Voraussetzung Die Werte des Ausdrucks oder der Variable müssen sich ganzzahlig beschreiben lassen. switch ( Ausdruck ) { } case Literal1 : Anweisung1 [ break; ] case Literal2 : Anweisung2 [ break; ] case Literaln : Anweisungn [ break; ] [ default: Anweisung ] 326
11 Mehrfachselektion - switch switch ( Ausdruck ) { } case Literal1 : Anweisung1 [ break; ] case Literal2 : Anweisung2 [ break; ] case Literaln : Anweisungn [ break; ] [ default: Anweisung ] Ablauf Besitzt Ausdruck einen Wert, der einem der Literale Literal1 bis Literaln entspricht, wird das Programm mit der Anweisung hinter der entsprechenden case-marke fortgeführt. Stimmt der Wert von Ausdruck mit keinem der Literale Literal1 bis Literaln überein, wird das Programm mit der Anweisung hinter der default-marke fortgeführt. Da die default-marke optional ist, wird bei Nichtvorhandensein mit der Anweisung nach dem switch-statement fortgefahren. Anmerkung Die Reihenfolge der case-marken ist beliebig. Es empfiehlt sich allerdings eine sinnvolle Sortierung. 327
12 Mehrfachselektion - switch switch ( Ausdruck ) { } case Literal1 : Anweisung1 [ break; ] case Literal2 : Anweisung2 [ break; ] case Literaln : Anweisungn [ break; ] [ default: Anweisung ] Achtung Es werden alle Anweisungen nach einer case-marke abgearbeitet, auch die Anweisungen anderer case-marken. Die Abarbeitung wird erst durch eine break-anweisung unterbrochen (oder durch Erreichen des Endes des switch-statements). Diese auf den ersten Blick etwas unlogisch erscheinende Eigenschaft ermöglicht eine flexible gemeinsame Verarbeitung von Wertekombinationen. Anmerkung Aufgrund des expliziten Abbruchs der Verarbeitung durch break ist eine Blockbildung hinter einer case-marke nicht nötig. 328
13 switch versus else-if Vorteile von switch Vorteile von else-if übersichtlicher besser erweiterbar meist effizienter, da sich wegen der konstanten case-marken schon während der Übersetzung Optimierungsmöglichkeiten für den Compiler bieten, während bei elseif die Auswertung in der Regel erst zur Laufzeit erfolgen kann switch prüft nur auf Werte- Gleichheit, else-if kann auch komplexere Bedingungen testen switch verarbeitet nur ganzzahlige Werte, else-if kann beliebige Werte verarbeiten 329
14 Iteration
15 Abweisende Schleife Wir kennen schon eine Möglichkeit, Iterationen in C zu formulieren - die Steuerstruktur while: Ablauf while ( Ausdruck ) Anweisung Wenn Ausdruck nach true evaluiert werden kann, wird Anweisung ausgeführt. Danach wird Ausdruck erneut getestet und gegebenenfalls Anweisung erneut ausgeführt usw. Abweisende Schleife Diese Form der Realisierung einer Iteration wird auch als abweisende Schleife bezeichnet, denn die Anweisung wird nur ausgeführt, wenn der Ausdruck im Vorhinein erfüllt ist. Achtung Damit keine Endlosschleife auftritt, muss durch die Anweisung ein Lvalue-Bestandteil von Ausdruck verändert werden. 331
16 Annehmende Schleife Definition Manchmal ist es notwendig, dass eine Aktion mindestens einmal durchgeführt wird, bevor entschieden werden kann, ob sie wiederholt wird. do Anweisung while ( Ausdruck ) ; Ablauf Die Anweisung wird definitiv einmal abgearbeitet. Kann anschließend der Ausdruck nach true evaluiert werden, dann wird die Anweisung erneut ausgeführt usw. Achtung Bei der do-while-schleife wird (im Gegensatz zur abweisenden Schleife) nach der Schleifenbedingung zwingend ein Semikolon verlangt, da das Ende der Anweisung erreicht ist. 332
17 do-while while Transformation einer annehmenden in eine abweisende Schleife Die Anweisung muss vor Beginn der abweisenden Schleife genau einmal ausgeführt werden und wird deshalb vor den abweisenden Schleifenrumpf kopiert. Ausdruck und Anweisung werden aus der annehmenden in die abweisende Schleifenvariante unverändert übernommen. do Anweisung Anweisung while ( Ausdruck ) ; while ( Ausdruck ) Anweisung 333
18 while do-while Transformation einer abweisenden in eine annehmende Schleife Der Ausdruck muss zusätzlich vor Beginn der annehmenden Schleife geprüft werden. Deshalb wird der annehmende Schleifenrumpf in eine unvollständige Selektion eingebettet. Ausdruck und Anweisung werden aus der abweisenden in die annehmende Schleifenvariante unverändert übernommen. if ( Ausdruck ) { while ( Ausdruck ) Anweisung do Anweisung while ( Ausdruck ) ; } 334
19 Typische Iteration Typischer Ablauf einer Iteration 1. Definition einer Zählvariablen z 2. Initialisierung von z 3. Wenn z einer bestimmten Bedingung genügt, dann 3.1. führe eine oder mehrere Anweisungen aus 3.2. verändere z auf die gleiche Weise 3.3. gehe zu 3. Kompaktere Darstellung Aufgrund des häufigen Vorkommens dieses Ablaufs gibt es in C eine Möglichkeit, die Schritte 2, 3, 3.2 und manchmal sogar Schritt 1 in einer speziellen Steuerstruktur zusammenzufassen. 335
20 Die for-schleife Variante mit while-schleife: Formulierung der for-schleife (bzgl. Situation der Vorfolie) Definition einer Zählvariablen z ; for ( Initialisierung von z ; Bedingung mit z ; Änderung von z ) Anweisung Definition einer Zählvariablen z ; Initialisierung von z ; while ( Bedingung mit z ) { Anweisung ; Änderung von z ; } oder alternativ noch kompakter for ( Definition und Initialisierung einer Zählvariablen z ; Bedingung mit z ; Änderung von z ) Anweisung 336
21 Die for-schleife Abweisende Schleife Die for-schleife ist semantisch nur eine kompaktere Darstellung einer while-schleife und demzufolge auch eine abweisende Schleife. Allgemeine Formulierung for ( Anweisung1 ; Ausdruck ; Anweisung3 ) Ablauf Anweisung2 Vor Beginn der Iteration wird eine beliebige Anweisung1 ausgeführt, die jedoch keine Blockanweisung sein darf und i.d.r. nur zur Initialisierung von Iterationsvariablen dient. Solange Ausdruck nach true evaluiert werden kann, wird Anweisung2 gefolgt von Anweisung3 ausgeführt, dabei dient Anweisung3 i.d.r. zur Veränderung einer Komponente von Ausdruck, damit irgendwann ein Abbruch der Iteration erreicht werden kann. 337
22 Ende der Vorlesung
Java 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
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
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
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
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
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
Mehr3. Anweisungen und Kontrollstrukturen
3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen
MehrKapitel 3: Anweisungen
Universität München, Hans-Peter Kriegel und Thomas Seidl Informatik II -66 Kapitel : Anweisungen Bedingte Anweisungen (Verzweigungen) Wiederholte Anweisungen (Schleifen) Abweisschleife Durchlaufschleife
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):
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
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
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,
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 25
Kapitel 9 Schleifen Seite 1 von 25 Schleifen - Schleifen werden zur wiederholten Ausführung von Anweisungen verwendet. - Es werden drei Arten von Schleifen unterschieden: o for -Schleife o while -Schleife
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
Mehr4.4 Imperative Algorithmen Verzweigung und Iteration
Eine weitere bedingte Schleife kann in Java mit dem Schlüsselwort for definiert werden: for (; i ; ) Alle drei Bestandteile im Schleifenkopf sind Ausdrücke
MehrTagesprogramm
1 2015-10-22 Tagesprogramm Syntax und Semantik Varianten von Schleifen Varianten von Programmverzweigungen 2 2015-10-22 Syntax und Semantik Darstellung der Syntax Syntax: Aufbau der Sätze bzw. Programme
MehrAnweisungen und Kontrollstrukturen
Anweisungen und Kontrollstrukturen Anweisungen werden im Programm nacheinander als Sequenz abgearbeitet, wenn nichts anderes angegeben ist. Einzelne Anweisung mit einer Zuweisung, zum Beispiel: A = 2*r*r;
MehrKontrollstrukturen -- 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
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
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
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrAbschnitt 5. Grundlagen der funktionalen & imperativen Programmierung
Übersicht Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung Einführung in die Programmierung 5. Grundlagen der funktionalen & imperativen Programmierung 1 Übersicht 5.1 Sorten und Abstrakte
MehrAnweisungen und Kontrollstrukturen
Anweisungen und Kontrollstrukturen Anweisungen werden im Programm nacheinander als Sequenz abgearbeitet, wenn nichts anderes angegeben ist. Einzelne Anweisung mit einer Zuweisung, zum Beispiel: A = 2*r*r;
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
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
MehrKapitel 4. Kontrollstrukturen
Kapitel 4 Kontrollstrukturen Kontrollstrukturen 1 Ziele Kontrollstrukturen in imperativen Programmen kennenlernen und verstehen. Realisierung der Kontrollstrukturen in Java. Kontrollstrukturen 2 Anweisungen
MehrKapitel 3: Anweisungen. Bedingte Anweisungen. Sequentielle Auswertung (Kurzschlussauswertung) Komplexe Bedingungen
Universität München, Hans-Peter Kriegel und Thomas eidl Informatik II -66 Universität München, Hans-Peter Kriegel und Thomas eidl Informatik II -67 Kapitel : Anweisungen Bedingte Anweisungen Bedingte Anweisungen
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
MehrAlgorithmen & Programmierung. Ausdrücke & Operatoren (1)
Algorithmen & Programmierung Ausdrücke & Operatoren (1) Ausdrücke Was ist ein Ausdruck? Literal Variable Funktionsaufruf Ausdruck, der durch Anwendung eines einstelligen (unären) Operators auf einen Ausdruck
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,
MehrKapitel 4. Kontrollstrukturen
Kapitel 4 Kontrollstrukturen Kontrollstrukturen 1 Ziele Kontrollstrukturen in imperativen Programmen kennenlernen und verstehen. Realisierung der Kontrollstrukturen in Java. Kontrollstrukturen 2 Anweisungen
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der Java-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 3: Kontrollstrukturen Einfache Anweisungen Anweisungsblöcke Steuerung
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
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
MehrProgrammiertechnik Kontrollstrukturen
Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 09.11.2016 Jun.-Prof. Dr.-Ing. Anne Koziolek Version 1.1 ARBEITSGRUPPE ARCHITECTURE-DRIVEN REQUIREMENTS ENGINEERING (ARE) INSTITUT FÜR PROGRAMMSTRUKTUREN UND
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
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),
MehrProgrammieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik
Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Sequenz (Aneinanderreihung von Anweisungen)
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Kontrollstrukturen Was sind Kontrollstrukturen Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrGrundlagen der Programmierung Teil1 Einheit III Okt. 2010
Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den
MehrProgrammieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik
Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Aneinanderreihung von Anweisungen (Sequenz)
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.
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
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
Mehr(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)
Anweisungen Eine Anweisung ist eine in einer beliebigen Programmiersprache abgefaßte Arbeitsvorschrift für einen Computer. Jedes Programm besteht aus einer bestimmten Anzahl von Anweisungen. Wir unterscheiden
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.
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
MehrDr. Monika Meiler. Inhalt
Inhalt 4 C-Anweisungen...4-2 4.1 Ausdrucksanweisungen...4-3 4.2 Zusammengesetzte Anweisungen (Anweisungsblöcke)...4-3 4.3 Schleifenanweisungen...4-4 4.3.1 while - Schleife...4-4 4.3.2 do - Schleife...4-5
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
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
MehrEinfache Bedingte Ausführung
Kontrollstrukturen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder
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
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
MehrC++ Teil Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen.
C++ Teil 3 3.3 Schleifen Man kann bestimme en in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. for-schleife for-schleife while-schleife do-while-schleife for ( Ausdruck1;
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 4-1 Übung 1) Schreiben Sie ein Programm, das die Fläche unter einer Parabel, also das Integral
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
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.)
MehrOperatoren (1) Operatoren (2)
Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.
MehrHerzlich willkommen!
Programmiertechnik 1 Herzlich willkommen! Dozent: Dipl.-Ing. Jürgen Wemheuer Teil 4: Schleifenkonstruktionen Mail: wemheuer@ewla.de Online: http://cpp.ewla.de/ Schleifenkonstruktion goto (veraltet!) 2
MehrC-Propädeutikum Anweisungen
C-Propädeutikum Anweisungen Stefan Freitag freitag@uni-leipzig.de Universitätsrechenzentrum Universitätsbibliothek Universität Leipzig basiert auf den Originalfolien von Jörn Hoffmann Ausdrücke Institut
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
Mehr2 Teil 2: Nassi-Schneiderman
2 Teil 2: Nassi-Schneiderman Wie kann man Nassi-Schneiderman in einer objektorientierten Sprache verwenden? Jedes Objekt besitzt Methoden, welche die Attribute des Objektes verändern. Das Verhalten der
MehrWebbasierte Programmierung
Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,
Mehr3. Grundanweisungen in Java
3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen
MehrGrundlagen der Programmierung Teil1 Einheit III Okt. 2009
Grundlagen der Programmierung Teil1 Einheit III - 23. Okt. 2009 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Ausdrücke & Anweisungen
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
MehrHerzlich willkommen!
Programmiertechnik 1 Herzlich willkommen! Dozent: Dipl.-Ing. Jürgen Wemheuer Teil 6: Zusammenfassung und Beispiele Mail: wemheuer@ewla.de Online: http://cpp.ewla.de/ Zusammenfassung (1) 2 1. Programm in
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
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
MehrLabor Software-Entwicklung 1
Labor Software-Entwicklung 1 Übereinkunft zu Programmablaufplänen PAP - Grundlagen Wintersemester 2015/2016 Seite 1 von 9 Inhalt DIN 66 001: Sinnbilder für Programmablaufplan... 3 Grenzstelle... 3 Ablauflinie...
MehrTag 3 Repetitorium Informatik (Java)
Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Typkonvertierung
MehrC- Kurs 04 Anweisungen
C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm
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
MehrAlgorithmen & Programmierung. Logik
Algorithmen & Programmierung Logik Aussagenlogik Gegenstand der Untersuchung Es werden Verknüpfungen zwischen Aussagen untersucht. Aussagen Was eine Aussage ist, wird nicht betrachtet, aber jede Aussage
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
MehrTag 3 Repetitorium Informatik (Java)
Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
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
MehrKapitel 4: Anweisungen und Kontrollstrukturen
inführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Kapitel 4: Anweisungen und Kontrollstrukturen Prof. Dr. David Sabel Lehr- und Forschungseinheit für Theoretische
MehrModProg 15-16, Vorl. 5
ModProg 15-16, Vorl. 5 Richard Grzibovski Nov. 18, 2015 1 / 29 Übersicht Übersicht 1 Logische Operationen 2 Priorität 3 Verzweigungen 4 Schleifen 2 / 29 Logische Werte Hauptkonzept: Besitzt ein C-Ausdruck
MehrKapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung
Kapitel 5 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Kontrollstrukturen Die if-anweisung Die switch-anweisung Die for-schleife Die while-schleife Die do-schleife WS 7/8 /55 Kontrollstrukturen
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
MehrSchleifen: Immer wieder dasselbe tun
Schleifen: Immer wieder dasselbe tun Bei einer Schleife werden Anweisungen immer wieder ausgeführt, solange die Bedingung wahr ist. Dafür muss man eine Variable immer wieder ändern, solange bis eine Überprüfung
MehrFlussdiagramm / Programmablaufplan (PAP)
Flussdiagramm / Programmablaufplan (PAP) Basissysmbole Grenzstelle (Anfang, Zwischenhalt oder Ende des Programms/Algorithmus) Verbindung Zur Verdeutlichung der Ablaufrichtung werden Linien mit einer Pfeilspitze
MehrDie for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben
18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (
MehrString-Konkatenation
YOU ARE HERE Ausdrücke und Anweisungen Einführung Objektorientierte Modellierung Java-Sprachkonstrukte Pakete und Zugriffskontrolle Deklaration von Methoden, Attributen, Variablen Ausdrücke und Anweisungen
MehrJava: Syntax-Grundlagen III
Java: Syntax-Grundlagen III Verzweigungen, bedingte Anweisungen Eines der wesentlichen Merkmale einer Programmiersprache ist ihre Fähigkeit, Operationen situationsbedingt ausführen zu können, d.h. eine
Mehr2.5 Programmstrukturen Entscheidung / Alternative
Entscheidung, ob der folgende Anweisungsblock ausgeführt wird oder ein alternativer Block Entscheidung ob die Bedingung wahr oder falsch (True / False) ist Syntax: 2.5 Programmstrukturen 2.5.1 Entscheidung
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
Mehr4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan)
4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung 4-1 4.1 Anweisungen Ein Programm besteht
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,
Mehr