Programmentwurf mittels strukturierter Programmierung. Programmentwurf. Nassi-Shneiderman-Diagramm [DIN ]
|
|
- Simon Michel
- vor 6 Jahren
- Abrufe
Transkript
1 Programmentwurf Bevor man sich daran macht, den Quelltext eines Programmes zu schreiben, sollte man sich einen Plan der Struktur des zukünftigen Programmes machen. Diese Phase eines Softwarentwicklungsprojekts bezeichnet man als Entwurfsphase (oder Designphase). Im folgenden sollen zwei Methoden für den Entwurf strukturierter Programme behandelt werden: e (DIN ) (auch Programm-Ablaufpläne genannt) und Struktogramme (DIN ) (nach ihren Erfindern Nassi-Shneiderman- Diagramme auch genannt). Der Begriff strukturierte Programmierung wurde bereits 1968 von einem der großen Informatikpioniere, Prof. Dijkstra, geprägt. Bei der strukturierten Programmierung werden Programme aus Strukturblöcken zusammengesetzt, die jeweils genau einen definierten Beginn (Eingang) und genau ein definiertes Ende (Ausgang) besitzen. Diese Art der Strukturierung vermeidet die unstrukturierte und dadurch fehleranfällige Programmierung wie sie in Assemblersprachen oder anderen Sprachen mit intensiver Verwendung des Sprachelements goto üblich war. Programmentwurf mittels strukturierter Programmierung Insbesondere durch Vermeidung der Sprunganweisung goto soll zuverlässige, lesbare und wartungsfreundliche Software erstellt werden, und zwar vom Entwurf über eine direkt codierfähige Logikbeschreibung bis zum Austesten des Programms sowie seiner Dokumentation. Dies geschieht durch die strikte Beachtung folgender Vorschriften: Programmiersprachunabhängiger Entwurf der Programmstruktur Hierarchische Gliederung der Struktur mit der Möglichkeit der schrittweisen Verfeinerung Zusammensetzung der Programmstruktur aus wenigen elementaren und leicht verständlichen Strukturblöcken Erstellung von zuverlässigem, lesbarem und wartungsfreundlichem Programmcode durch Vermeidung von unstrukturierten Sprunganweisungen (goto). Vorteile [DIN ] Programmentwurf 1/30 Struktogramme stellen (wie Programmablaufpläne) die logischen Strukturen von Problemlösungen dar und sind deshalb unabhängig von Programmiersprachen die Gesamtproblematik und die Teilprobleme sind mit denselben Strukturblöcken und Reihungsregeln darstellbar. Durch diese Möglichkeit einer schrittweisen Verfeinerung können Struktogramme als Planungs-, Test- und Dokumentationshilfsmittel verwendet werden die Zahl der elementaren logischen Strukturblöcke wird auf maximal sieben beschränkt durch die Kanalstruktur (genau ein Eingang in und ein Ausgang aus jedem ) werden die Auswirkungen von Bedingungen klar erkennbar durch das Klammersymbol wird der Umfang von deutlich sichtbar Abläufe, die diesen elementaren logischen Strukturen nicht entsprechen, können nicht dargestellt werden (da ein Sprungsymbol fehlt, sind keine "wilden" Sprünge möglich!) Programmentwurf 3/30 Vorteile (Fortsetzung) [DIN ] Programmentwurf 2/30 die Strukturblöcke werden durch je eine eindeutige Eintritts- und eine eindeutige Austrittsstelle miteinander verbunden (striktes Prinzip der Zweipoligkeit), wodurch Vieldeutigkeit vermieden wird durch die Beschränkung auf maximal sieben elementare Strukturblöcke und durch das Prinzip der Zweipoligkeit sind die Struktogramme für alle Fachabteilungen leicht lesbar, und ihre logische Richtigkeit ist schnell und sicher testbar (lineare Kontrollstrukturen) Nachteile Beschränkung der Individualität beim Problemlösen durch die Auflage von Regeln für die strukturierte Programmierung häufig sind aufwendige Änderungsarbeiten notwendig, da wegen des strikten Gebots der Zweipoligkeit Einfügungen oder Löschungen nicht ohne weiteres möglich sind da die Strukturblöcke nur einen Ausgang haben, können mehrere Schalter und Abfragen notwendig werden Programmentwurf 4/30
2 Es gibt derzeit (2007) eine Reihe von Werkzeugen, um Struktogramme rechnergestützt zu erstellen. Dabei muß man zwei Arten von Werkzeugen grundsätzlich auseinanderhalten: 1. Werkzeuge zum Entwerfen von Programmen mittels Struktogrammen Dies sind graphische Editoren, mit denen es möglich ist, interaktiv Struktogramme zu entwickeln. Diese Programme unterstützen den Programmentwurf im oben beschriebenen Sinn. Mir sind leider keine Freeware- oder Sharewareprogramme von diesem Typ bekannt. 2. Werkzeuge zum Dokumentieren bereits fertiger imperativer (C, Pascal, va) Programme. Diese lesen als Eingabe den entsprechende Quelltext und liefern als Ausgabe Struktogramme, in deren Strukturblöcken die Anweisungen des eingelesenen Quelltexts stehen. Zu diesem Genre gibt es eine Reihe von Freeware- oder Sharewareprogrammen. Achtung: Da ich im Rahmen der Belegarbeiten Programmentwürfe erwarte, können Sie die zweite Sorte von Programmen vergessen! Der Programmentwurf soll Anweisungen in natürlicher Sprache enthalten und nicht das fertige Programm in einer bereits gewählten Programmiersprache! Anweisungsfolge Programmentwurf 5/30 Nassi-Shneiderman-Diagram heißen auch Struktogramme. Sie betonen die Struktur des geplanten Programms. Die kleinste Einheit in einem einem Struktogramm ist der. Es gibt 6 verschiedene Strukturblöcke, die im Folgenden vorgestellt werden: einfacher Anweisungsfolge Schleife Funktionsaufruf Einige dieser Strukturblöcke werden noch nach verschiedenen Fällen weiter unterschieden. Struktogramme geben im Wesentlichen die Kontrollstruktur des Programms wieder. Programmentwurf 6/30 Anweisungsfolge bedingte Auswahl Bedingung erfüllt? letzter Programmentwurf 7/30 Programmentwurf 8/30
3 alternative Auswahl (ohne Fehlerausgang) Bedingung erfüllt? Fall 1 Fall 2 Fallabfrage Fall n n Programmentwurf 9/30 Programmentwurf 10/30 (mit Fehlerausgang) nicht abweisende Schleife Fall 1 Fall 2 Fall zulässig? Fall n 1 2 n Fehlerfall Wiederhole, bis Endebedingung erfüllt ist Programmentwurf 11/30 Programmentwurf 12/30
4 Funktion (Unterprogramm) Defintion einer Funktion abweisende Schleife (kann auch eine Zählerschleife sein!) Funktionsbezeichner Wiederhole, solange Bedingung erfüllt ist letzter Funktion (Unterprogramm) Benutzung einer Funktion (Funktionsaufruf) Funktionsbezeichner Programmentwurf 13/30 Vorteile Programmablaufplan () [DIN ] detaillierte und genaue Beschreibung der Ablauflogik Sinnbilder sind direkt codierbar Möglichkeit der Anwendung der strukturierten Programmierung Nachteile Programmentwurf 14/30 kein Zwang zur strukturierten Programmierung stufenweise nicht weiter verfeinerbar, da es bereits die höchste Detaillierungsstufe beschreibt bei umfangreichen Programmen schwer überschaubar viele Fallunterscheiden führen zu unübersichtlichen Bildern, da nur maximal drei Alternativen mit einer Abfrage verfolgt werden können durch viele sausgänge in unterschiedliche Programmteile können bei Änderungen leicht Fehler unterlaufen relativ aufwendige Änderungen keine Darstellung des Datenflusses Programmentwurf 15/30 Programmentwurf 16/30
5 Anweisungsfolge bedingte Auswahl 1. Bedingung erfüllt? 2. letzter alternative Auswahl Programmentwurf 17/30 (ohne Fehlerausgang) Programmentwurf 18/30 Bedingung erfüllt? Fallabfrage 1 2 n Programmentwurf 19/30 Programmentwurf 20/30
6 (mit Fehlerausgang) abweisende Schleife Fall zulässig Fallabfrage Ausführungsbedingung erfüllt? 1 2 n im Fehlerfall nicht abweisende Schleife Programmentwurf 21/30 Zählerschleife Programmentwurf 22/30 Zähler auf Startwert Endebedingung erfüllt? Zähler < Endwert? Zähler erhöhen Programmentwurf 23/30 Programmentwurf 24/30
7 C-Programmcode Anweisungsfolge C-Programmcode <Anweisung 1 > ; <Anweisung 2 > ; <Anweisung n > ; bedingte Auswahl if ( <Bedingung> ) altenative Auswahl if ( <Bedingung> ) } else } ohne Fehlerausgang switch ( <Ausdruck> ) C-Programmcode case <konstanter Ausdruck> : case <konstanter Ausdruck> : mit Fehlerausgang switch ( <Ausdruck> ) case <konstanter Ausdruck> : case <konstanter Ausdruck> : default: Programmentwurf 25/30 nicht abweisende Schleife do } while ( <Bedingung> ) ; abweisende Schleife while ( <Bedingung> ) C-Programmcode Programmentwurf 26/30 Programmentwurf 27/30 Programmentwurf 28/30
8 C-Programmcode C-Programmcode Funktionen Zählerschleife for ( <Startwert> ; <Bedingung> ; <Ausdruck> ) Funktionsdeklaration <Rückgabetyp> <Funktionsbezeichner> ( <Liste formaler Parameter> ) ; Funktionsdefinition <Rückgabetyp> <Funktionsbezeichner> ( <Liste formaler Parameter> ) Funktionsaufruf <Funktionsbezeichner> ( <Liste aktueller Parameter> ) ; Programmentwurf 29/30 Programmentwurf 30/30
5. Strukturierte Programmierung
5. Strukturierte Programmierung 5.1 Ziele 5.2 Prinzipien 5.3 Basisstrukturen Folie 115 Apr-04 Ziele der strukturierten Programmierung Unterstützung einer methodischen Vorgehensweise beim Programmentwurf
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
MehrProgrammentwurf Prof. Metzler
Programmentwurf 13.05.2014 Prof. Metzler 1 Programmiersprachen Assembler problemorientierte Sprache C anwendungsorientierte Sprache Basic Kommandosprachen 13.05.2014 Prof. Metzler 2 Assemblersprache Die
Mehr4.Grundsätzliche Programmentwicklungsmethoden
4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden
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
Mehr99 - Struktogramme - 2. Sequenz I
Struktogramme Sequenz I 99 - Struktogramme - 2 double number, twicenumber; // Einlesen der Anzahl System.out.print("Zahl eingeben:"); number=keyboard.doubleinput(); // Verdopplung der eingegebenen Zahl
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
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
MehrInhalt. Einführung in die Strukturierte Programmierung 15
Inhalt Einführung in die Strukturierte Programmierung 15 1.1 Was bedeutet Programmieren? 17 1.2 Was bedeutet Strukturierte Programmierung? 18 1.3 Was ist Pascal? 19 1.4 Was ist PS/k? 20 1.5 Warum wird
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 05: Weitere Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme 1. Teil: Weitere Kontrollstrukturen Wiederholungsstrukturen (Schleifen) While-,do-,for-Schleifen
MehrArrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss
Arrays FTI 41 2005-09-09 Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss z.b. Dim Werte(x) As Single. Wobei
Mehr1 Funktionale vs. Imperative Programmierung
1 Funktionale vs. Imperative Programmierung 1.1 Einführung Programme einer funktionalen Programmiersprache (functional programming language, FPL) bestehen ausschließlich aus Funktionsdefinitionen und Funktionsaufrufen.
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
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
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
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
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...
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
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
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
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,
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
Mehr6. Iteration (Schleifenanweisungen)
6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 9. Nov. 2015 2 Schwerpunkte While-Anweisung: "abweisende"
MehrTechnische Probleme lösen mit C/C++
Technische Probleme lösen mit C/C++ Von der Analyse bis zur Dokumentation Bearbeitet von Norbert Heiderich, Wolfgang Meyer, Manfred Mettke 2. Auflage 2013. Buch. 287 S. ISBN 978 3 446 43889 7 Format (B
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Einführung in die strukturierte Programmierung Teil 2 Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile
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,
MehrImperative vs. Funktionale Programmierung
Beispiel: Entwerfe eine Funktion, die testet, ob eine Zahl n eine Primzahl ist oder nicht. Beobachtung: (1) Wenn n Primzahl ist, ist die Menge der Teiler von n leer. (2) Die Menge der Teiler von n sind
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
MehrIII.1 Prinzipien der funktionalen Programmierung - 1 -
1. Prinzipien der funktionalen Programmierung 2. Deklarationen 3. Ausdrücke 4. Muster (Patterns) 5. Typen und Datenstrukturen 6. Funktionale Programmiertechniken III.1 Prinzipien der funktionalen Programmierung
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
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 11. Vorlesung 14.06.2017 1 Schleifen 2 do...while do block while ( bedingung ); block: eine Anweisung oder Anweisungen in { block bed JA NEIN 3 while while ( bedingung ) block
MehrNassi-Shneiderman-Diagramm - Wikipedia
Nassi-Shneiderman-Diagramm aus Wikipedia, der freien Enzyklopädie Ein Nassi-Shneiderman-Diagramm ist eine Entwurfsmethode für die strukturierte Programmierung, die 1972/73 von Dr. Isaac Nassi und Dr. Ben
MehrLabor Industrielle Netzwerke. Versuch 2: Tastaturentprellung
Labor Industrielle Netzwerke Versuch 2: Tastaturentprellung Datum: 21.01.2014 Prof. Dr.-Ing. habil. Josef Börcsök Vorwort zum Entprellvorgang Im folgenden Versuch wollen wir uns mit Softwarelösungen beschäftigen,
Mehr2. Algorithmenbegriff
2. Algorithmenbegriff Keine Algorithmen: Anleitungen, Kochrezepte, Wegbeschreibungen,... Algorithmus: Berechnungsvorschrift, die angibt, wie durch Ausführung bestimmter Elementaroperationen aus Eingabegrößen
MehrKontrollstrukturen - Universität Köln
Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,
MehrGliederung. n Teil I: Einleitung und Grundbegriffe. n Teil II: Imperative und objektorientierte Programmierung
Gliederung n Teil I: Einleitung und Grundbegriffe l 1. Organisatorisches l 2. Grundlagen von Programmiersprachen n Teil II: Imperative und objektorientierte Programmierung l 1. Grundelemente der Programmierung
MehrVerifizierende Testverfahren
Spezifikation Um einen Algorithmus zu schreiben, muss das zu lösende Problem genau beschrieben sein. Eine Spezifikation ist Verifizierende Testverfahren vollständig, wenn alle Anforderungen/alle relevanten
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,
MehrKontrollstrukturen, Strukturierte Programmierung
, Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort
Mehr6. Iteration (Schleifenanweisungen)
Schwerpunkte While-: "abweisende" Schleife 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java Do-while-: "nichtabweisende" Schleife For-: zählergesteuerte Schleife Klassifikation
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
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
MehrInformationsverarbeitung im Bauwesen
5 5 Markus Uhlmann Basierend auf Folien von A. Brugger 1 Zusammenfassung der 4. Vorlesung Struktur von VBA Programmen Objekte in VBA Einsatz von Modulen Deklaration von Variablen/Konstanten Arbeiten mit
MehrKapitel 4. Strukturierte Programmierung und Kontrollstrukturen
Kapitel 4 Strukturierte Programmierung und Kontrollstrukturen 1 Gliederung Kapitel 4 Strukturierte Programmierung und Kontrollstrukturen 4.1 Strukturierte Programmierung 4.2 Folge - Sequenz 4.3 Verzweigung
MehrEinführung in die Programmierung I. 4. Kontrollstrukturen. Stefan Zimmer
Einführung in die Programmierung I 4. Kontrollstrukturen Stefan Zimmer 12.11.2007 Arten von Anweisungen Ein Maple-Programm besteht aus einer Folge von Anweisungen (englisch: statement), getrennt durch
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 und Datenstrukturen Sommersemester 2007
Algorithmen und Datenstrukturen Sommersemester 2007 Steffen Reith reith@informatik.fh-wiesbaden.de Fachhochschule Wiesbaden 4. April 2007 Steffen Reith Algorithmen und Datenstrukturen 4. April 2007 1 /
MehrAlgorithmen. Beispiele: Beispiele: Algorithmen zum Test auf Primzahl. Programmieren - Java I WS 2001
Algorithmen Ein Algorithmus ist ein Verfahren zur systematischen, schrittweisen Lösung eines Problems. Er besteht aus einzelnen Anweisungen, die in einer bestimmten Reihenfolge, evtl. mehrmals ausgeführt
MehrC-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi
1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen
MehrFachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave
Fachhochschule Südwestfalen Wir geben Impulse Kontrollstrukturen und Schleifen in Octave Einführung Inhalt m-files Script-Files Function-Files Ein- Ausgabe von Variablen oder Ergebnissen For-Schleife While-Schleife
MehrStrukturiertes Programmieren in BASIC
Programmieren von Mikrocomputern Band 13 Wolfgang Schneider Strukturiertes Programmieren in BASIC Eine Einführung mit zahlreichen Beispielen TECHNISCHE HOCHSCHULE DARMSTADT F'..' herein» 1 G o so-;,;!-:
MehrWirtschaftsinformatik 6a: Modellierung. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte
Wirtschaftsinformatik 6a: Modellierung Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Computertechnik Man kann Software auf 2 Arten herstellen: Entweder macht man sie so klar und einfach,
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 und Datenstrukturen
Algorithmen und Datenstrukturen 2.9 Unstrukturierte Kontrollanweisungen W. Tasin, M.Sc. Fakultät 04 tasin@hm.edu Allgemeines (1) Unstrukturierte Kontrollanweisungen ermöglichen einen bedingten oder unbedingte
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
MehrKlausur: Informatik, am 11. Juli 2013 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
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 ( / 15 Pkt.) Was liefert
MehrKapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte
Elementare Schritte Ein elementarer Berechnungsschritt eines Algorithmus ändert im Allgemeinen den Wert von Variablen Zuweisungsoperation von fundamentaler Bedeutung Zuweisungsoperator In Pascal := In
Mehr4.5 Nassi-Schneidermann Diagramm
4.5 Nassi-Schneidermann Diagramm Nassi-Schneidermann-Diagramme, die auch Struktogramme genannt werden, sind graphische Hilfsmittel zum Entwurf und zur Darstellung von Programmsystemen. Sie sind beim Detailentwurf
Mehr1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)
1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf
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
MehrEinführung in die Programmierung mit VBA
Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen
Mehr3. Methodik der Programmerstellung
3. Methodik der Programmerstellung 3.1 Vorgehen 3.2 Programmerstellung 3.2.1 Konventionen 3.2.2 Schlüsselwörter und Bezeichner 3.2.3 Fehlertypen 3.2.4 Programmierstil 3.3 Formaler Aufbau eines Pascal-Programms
MehrGrundlagen der Programmierung & Algorithmen und Datenstrukturen
Grundlagen der Programmierung & Algorithmen und Datenstrukturen Einführung in die strukturierte Programmierung Teil 2 Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt.
MehrFORTRAN77. eine höllische Programmiersprache. Christian Sternecker. Sommersemester TU-München
FORTRAN77 eine höllische Programmiersprache Christian Sternecker TU-München Sommersemester 2010 Aufbau des Vortrags Geschichte Merkmale Höllische Konzepte Typsicherheit Programmstruktur Speicherverwaltung
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
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
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
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
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
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
MehrDatentechnik. Prinzipieller Aufbau eines Schnittstellenbausteins
Prinzipieller Aufbau eines Schnittstellenbausteins DB /CS A0-Ai R/W Reset Takt Int IntAck zum µp Datenbus Puffer Steuerung Interruptsteuerung & IF Statusregister IE Steuerregister Befehlsregister Datenregister
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 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
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
MehrÜberblick. Typanpassungen Iteration mit Schleifen Bedingte Anweisungen. Agile Softwareentwicklung Einfaches Ratespiel.
Globalübung 2 Überblick Typanpassungen Iteration mit Schleifen Bedingte Anweisungen Agile Softwareentwicklung Einfaches Ratespiel Softwarefehler Überblick Typanpassungen Iteration mit Schleifen Bedingte
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
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.)
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrFH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken
4 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Blöcke Blöcke erweitern einzelne Anweisungen, etwa bei Kontrollstrukturen später Beispiel: Einzelne Anweisung: anweisung; Erweiterung
MehrWiederholungen / Schleifen
Wiederholungen / Schleifen Repetitive Ausführung von Instruktionen InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Beispiel Quadratzahlen von 1000 bis 1009 berechnen
MehrFallunterscheidung: if-statement
Fallunterscheidung: if-statement A E 1 E 2 V 1 V 2 Syntax: if ( ausdruck ) Semantik: else anweisungsfolge_1 anweisungsfolge_2 1. Der ausdruck wird bewertet 2. Ergibt die Bewertung einen Wert ungleich 0
Mehr3 KONTROLLSTRUKTUREN ALLGEMEINES
3 KONTROLLSTRUKTUREN ALLGEMEINES Leitideen: Die Syntax der Kontrollstrukturen in C++ soll möglichst wenige reservierte Worte verwenden, daher werden Bedingungen geklammert und mehrere abhängige Anweisungen
MehrKlausur: Informatik, am 11. Juli 2013 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
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) Geben
Mehr2 Programmieren in Java I noch ohne Nachbearbeitung
1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe
MehrVerhalten. Def. und Nutzen von Verhalten. Pseudocode Schreibtischtest. Algorithmen
Verhalten Def. und Nutzen von Verhalten Algorithmen Pseudocode Schreibtischtest Verhalten & Pseudocode Das Verhalten beschreibt, wie sich die Datenstrukturen (Variablen) eines Programms verändern müssen,
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
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;
MehrÜbersicht Programmablaufsteuerung
Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen
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
Mehr2 Kontrollstrukturen, strukturierte Programmierung
2-1 2 Kontrollstrukturen, strukturierte Programmierung 2.1 Algorithmen Für die Entwicklung von Programmen, die komplexere Aufgaben lösen sollen, bewährt sich ein zweistufiges Verfahren. In der ersten Phase
Mehreinseitige Selektion zweiseitige Selektion
einseitige Selektion / Die einseitige Selektion gestattet die Ausführung einer eisung (welche wiederum eine Sequenz sein kann), wenn die angegebene wahr () ist. 19 zweiseitige Selektion _1 _2 _1 _2 Die
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
Mehr