Labor Software-Entwicklung 1

Ähnliche Dokumente
BKTM - Programmieren leicht gemacht.

Flussdiagramm / Programmablaufplan (PAP)

2.5 Programmstrukturen Entscheidung / Alternative

Objektorientierte Programmierung

Programmentwurf Prof. Metzler

Grundlagen der Programmierung

Anweisungen und Kontrollstrukturen

Arbeitsblätter für Algorithmierung und Strukturierung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

Javakurs für Anfänger

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 25

Anweisungen und Kontrollstrukturen

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

2 Teil 2: Nassi-Schneiderman

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

BKTM - Programmieren leicht gemacht.

Arbeitsblätter für Algorithmierung und Strukturierung C #

Schleifen: Immer wieder dasselbe tun

4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan)

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen

Konzepte der Informatik

2. Programmierung in C

Programmablaufplan. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)

Annehmende Schleife do while

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Schleifen in Javascript

INP (05) Prof. Dr.-Ing. S. Gössner. University of Applied Sciences Lippe & Höxter

Übersicht. Informatik 1 Teil 4: Programmwiederholungen (Schleifen), Entwurf, Mathematikfunktionen

Schleifen in C/C++/Java

Schleifenanweisungen

Einführung in die Programmierung II. 3. Kontrollstrukturen

4.4 Imperative Algorithmen Prozeduren

Kapitel 4. Strukturierte Programmierung und Kontrollstrukturen

1.8 Kontrollstrukturen 73. default : ziffer = 0; if (ziffer > 0) { cout << "Ziffer = " << ziffer; else { cout << "keine römische Ziffer!

1.8.5 Wiederholungen. Beispiele Unendliche Schleife: 1.8 Kontrollstrukturen 75. ( Bedingung ) AnweisungOderBlock. ja Anweisung. Bedingung erfüllt?

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung:

Schleifen in C/C++/Java

4. Ablaufsteuerung (Kontrollstrukturen)

12 == 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

Programmierkurs Java

Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss

Nassi-Shneiderman-Diagramm - Wikipedia

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Webbasierte Programmierung

Verzweigungen und Wiederholungen

Martin Unold INFORMATIK. Geoinformatik und Vermessung

5. Strukturierte Programmierung

Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung

5. Elementare Befehle und Struktogramme

Programmiertechnik Kontrollstrukturen

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

EINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15

Labor Industrielle Netzwerke. Versuch 2: Tastaturentprellung

Kontrollstrukturen, Strukturierte Programmierung

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen

Einführung in die Programmierung Wintersemester 2011/12

Grundlagen der Programmierung

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

C++ - Einführung in die Programmiersprache Schleifen

Javakurs für Anfänger

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen

Einstieg in die Informatik mit Java

4 Formelsammlung C/C++

Kontrollstrukturen Blöcke / Schleifen / Bedingungen

Struktogramme. Hinweise 1 Stand:

Grundlagen der Programmierung

einseitige Selektion zweiseitige Selektion

Schleifen Datenfelder (Arrays) Verzweigungen

Tag 3 Repetitorium Informatik (Java)

9 Anweisungen und Kontrollstrukturen

Dr. Monika Meiler. Inhalt

Objektorientierte Programmierung OOP Programmieren mit Java

= 7 (In Binärdarstellung: = 0111; Unterlauf) = -8 (In Binärdarstellung: = 1000; Überlauf)

Vorlesung Programmieren

Softwareentwicklung Sequenz, Verzweigungen, Schleifen

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Programmieren I. Kapitel 5. Kontrollfluss

Elementare Konzepte von

Vorlesung Programmieren

EINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 16/17

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte

Ausdrücke und Anweisungen Übungen

Entwurf von Algorithmen - Kontrollstrukturen

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Java: Syntax-Grundlagen III

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. Hochschule Darmstadt -Fachbereich Informatik-

Java: Eine kurze Einführung an Beispielen

Tag 3 Repetitorium Informatik (Java)

3. Anweisungen und Kontrollstrukturen

Kapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Brückenkurs Programmieren

Programmieren in C/C++ und MATLAB

Transkript:

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... 3 Operation, Verarbeitung... 3 Unterprogrammaufruf... 3 Ein-/Ausgabe... 4 Sequenz... 4 Einfache Auswahl... 5 Zweifache Auswahl... 5 Mehrfachauswahl... 6 Fallauswahl... 7 Wiederholung mit vorausgehender Bedingungsprüfung... 7 Wiederholung mit nachfolgender Bedingungsprüfung... 8 Zählergesteuerte Schleife... 8 Kommentar... 9 Wintersemester 2015/2016 Seite 2 von 9

DIN 66 001: Sinnbilder für Programmablaufplan Ein Programmablaufplan (PAP) ist ein Ablaufdiagramm für ein Computerprogramm, das auch als Flussdiagramm (engl. flowchart) oder Programmstrukturplan bezeichnet wird. Die Symbole für Programmablaufpläne sind in der DIN 66001 genormt. Dort werden auch Symbole für Datenflusspläne definiert. Flussdiagramme werden oft unabhängig von Computerprogrammen zur Darstellung von Prozessen und Tätigkeiten eingesetzt. Grenzstelle kennzeichnet Anfang/Ende oder eine Unterbrechung des Programmes Ablauflinie versinnlicht Übergang zum nächsten Element bevorzugte Richtung ist von oben nach unten bzw. von links nach rechts Vergessen Sie bitte nie den Pfeil; in der Prüfung wird es zu Punktabzug führen. Operation, Verarbeitung wird verwendet für allgemeine Operationen i = i + 5; // addiere 5 zu i Unterprogrammaufruf verzweigt zu einem Unterprogramm, das durch einen weiteren Programmablaufplan beschrieben ist fak = fakultaet(5); // Aufruf der Funktion fakultaet // (Parameter gibt an für welches Argument die Fakultät bestimmt werden soll) // mit Parameter 5 // Rückgabewert/Ergebnis wird in fak gespeichert Wintersemester 2015/2016 Seite 3 von 9

Ein-/Ausgabe kennzeichnet Ein- oder Ausgabe von Daten, z. B. auf dem Bildschirm printf("beliebige Ganzzahl eingeben: "); scanf("%i", &zahl); printf("die Zahl war %i.\n", zahl); // Beliebige Ganzzahl eingeben: // Zahl von Tastatur einlesen // Ausgeben der Eingelesenen Zahl mit dem Satz // Die Zahl war HIER DIE ZAHL dann einen Zeilenumbruch Sequenz jede Anweisung wird in einen eigenen Block geschrieben die Anweisungen werden nacheinander von oben nach unten abgearbeitet die Strukturblöcke werden mit Ablauflinien verbunden i = i + 5; i = i * i; erg = i + 100; // addiere 5 zu i // quadriere i //addiere 100 zu i und speichere das Ergebnis in erg Wintersemester 2015/2016 Seite 4 von 9

Einfache Auswahl nur wenn Bedingung wahr ist, wird Ja-Pfad durchlaufen Ja-Pfad kann Anweisung oder Sequenz beinhalten ist Bedingung nicht wahr, wird Durchlauf ohne Abarbeitung des Ja-Pfades fortgesetzt, also der Nein-Pfad if(5 < i) // Ist der Wert von i größer als 5? // true i -= 1; // dekrementiere den Wert von i und weise diesen i zu // false Zweifache Auswahl wenn Bedingung wahr ist, wird Ja-Pfad ausgeführt wenn Bedingung nicht wahr ist, wird Nein-Pfad ausgeführt jeder Pfad kann aus einer Sequenz von Anweisungen bestehen if(5 < i) // Ist der Wert von i größer als 5? // true i -= 1; // dekrementiere den Wert von i und weise diesen i zu else // false i = 0; // weise i den Wert 0 zu Wintersemester 2015/2016 Seite 5 von 9

Mehrfachauswahl verschachtelte Auswahl if(5 < i) // Ist der Wert von i größer als 5? // true if (10 < i) // Ist der Wert von i größer als 10? // true i--; // dekrementiere den Wert von i und weise diesen i zu else // false ++i; // inkrementiere den Wert von i und weise diesen i zu else // false i = 0; // weise i den Wert 0 zu Wintersemester 2015/2016 Seite 6 von 9

Fallauswahl eignet sich besonders, wenn mehr als 3 Auswahloptionen möglich sind es sollte ein Default-(hier: sonst) Zweig berücksichtigt werden switch(auswahl) // Auswahl =? case 0: // 0 i += 1; // addiere den Wert von i mit 1 und weise diesen i zu break; case 1: // 1 i += 2; // addiere den Wert von i mit 2 und weise diesen i zu break; case 2: // 2 i += 4; // addiere den Wert von i mit 4 und weise diesen i zu break; case 3: // 3 i += 8; // addiere den Wert von i mit 8 und weise diesen i zu break; default: // sonst (alle anderen Fälle) Wiederholung mit vorausgehender Bedingungsprüfung solange der Ausdruck der Bedingung wahr ist, wird der nachfolgende Anweisungsblock ausgeführt ist Bedingung nicht erfüllt, wird der Programmfluss nach dem Anweisungsblock fortgesetzt in C: while-schleife while (10 > i) // Ist der Wert von i kleiner als 10? sum += i; // addiere den Wert von sum mit dem Wert von i und weise diesen sum zu ++i; // inkrementiere den Wert von i und weise diesen i zu Wintersemester 2015/2016 Seite 7 von 9

Wiederholung mit nachfolgender Bedingungsprüfung Anweisungsblock wird mindestens einmal durchlaufen erst nach dem ersten Durchlauf wird Bedingung überprüft wenn Bedingung erfüllt, wird Anweisungsblock wiederholt, sonst wird mit der ersten Anweisung nach dem Block fortgefahren in C: do while-schleife do sum = sum + i; // addiere den Wert von sum mit dem Wert von i und weise diesen sum zu i = i + 1; // inkrementiere den Wert von i und weise diesen i zu while (10 > i); // Ist der Wert von i kleiner als 10? Zählergesteuerte Schleife in C: for-schleife die Anzahl der Iterationen ist schon vor dem Eintritt in die Schleife bekannt werden mehrere Schleifen ineinander geschachtelt, empfiehlt es sich die einzelnen Schleifen mit jeweils eindeutigen Labels zu versehen, um die Übersicht beim PAP zu bewahren (siehe Beispiel unten: kleines Einmaleins) for (i = 1; i <= 10; i = i+1) sum = sum + i; // Anfangswert:1; Bedingung: Solange Wert kleiner gleich 10; Anweisung: // inkrementiere Wert // addiere den Wert von sum mit dem Wert von i und weise diesen sum zu Wintersemester 2015/2016 Seite 8 von 9

for(i=1; i<=10; ++i) // siehe obiges Bild for(j=1; j<=10; ++j) // siehe obiges Bild temp = i*j; // siehe obiges Bild printf("%i", temp); // siehe obiges Bild // Ende LOOP2 printf("\n"); // siehe obiges Bild // Ende LOOP1 Kommentar Sie haben auch in einem PAP die Möglichkeit Kommentare zu schreiben. Wintersemester 2015/2016 Seite 9 von 9