SUCHE MIT Google
Web virtualuniversity.ch
HOME DIDAKTIK ECDL ELEKTRONIK GUIDES HR MANAGEMENT MATHEMATIK SOFTWARE TELEKOM
DIENSTE
Anmeldung
Newsletter abonnieren
Sag's einem Freund!
VirtualUniversity als Startseite
Zu den Favoriten hinzufügen
Feedback Formular
e-Learning für Lehrer
Spenden
Autoren login
KURSE SUCHEN
Kurse veröffentlichen

Suche nach Datum:

Suche mit Schlüsselwort:

Suche nach Land:

Suche nach Kategorie:
PARTNER
ausbildung24.ch - Ausbildungsportal, Seminare, Kursen... 

 
HTMLopen.de - Alles was ein Webmaster braucht

 
PCopen.de - PC LAN Netze und Netzwerke - alles was ein IT Profi und Systemtechnicker braucht

SOFTWARE
Wiederhole Anweisungen, bis (Abbruch-)Bedingung erfüllt ist
  • Unterablaufstrukturen:
    Führe Anweisungen aus, führe Unterprogramm aus, kehre zurück und fahre im Hauptprogramm fort.

    Sequenz (Folgestruktur)

    Linearer Ablauf: Jedes Programm besteht aus einer Aneinanderreihung von Anweisungen an den Computer. Die Sequenz ist eine Folge von Anweisungen, die in der Reihenfolge ihrer Niederschrift ausgeführt werden. Man spricht deshalb auch vom linearen Ablauf bzw. unverzweigten Ablauf, vom Geradeaus-Ablauf oder von einer Sequenz. In verschiedenen Programmiersprachen wird die "Klammerung" einer solchen Anweisungsfolge unterstützt (Pascal: BEGIN ... END, C: { ... }).

    Auswahl (Bedingte Verzweigung, Mehrfachauswahl)

    Sie ist gekennzeichnet durch einen nicht linearen Ablauf mit einer Vorwärtsverzweigung. Der Ablauf gelangt an einen Entscheidungspunkt, an dem, abhängig von einer Bedingung, unterschiedliche Verarbeitungswege eingeschlagen werden. Das Entscheidungssymbol gibt eine Bedingung an (i. a. ein bedingter Ausdruck), deren Ergebnis ein Wahrheitswert ist (WAHR oder FALSCH).
    • einseitige Auswahl
      Diese Alternativstruktur führt nur auf einem der beiden Verzweigungspfaden eine Anweisung(sfolge) aus und endet in der Zusammenführung beider Pfade.

      WENN Bedingung DANN Anweisungsfolge;

    • zweiseitige Auswahl Bei dieser Alternativstruktur führt jeder Verzweigungspfad auf jeweils eine eigene Anweisungsfolge. Sie endet auch wieder in einer Zusammenführung der Pfade.

      WENN Bedingung DANN Anweisungsfolge 1 SONST Anweisungsfolge 2;

    • Mehrfachauswahl Bei dieser Struktur gibt es mehr als zwei Auswahlpfade, die aus einer Verzeigung ihren Ausgang nehmen und in einer Zusammenführung enden. Hier erfolgt die Abfrage nicht nach einer Bedingung, sondern der bedingte Ausdruck liefert einen Wert. Für jeden möglichen Ergebniswert ist ein Zweig vorgesehen. Existiert nicht für jeden möglichen Ergebniswert der Bedingung ein Pfad, ist ein zusätzlicher Pfad für alle nicht behandelten Fälle vorzusehen ("SONST"-Zweig).

      WENN bedingter Ausdruck     Wert1: Anweisung1;
          Wert2: Anweisung2;     ...;
          Wertn: Anweisungn; SONST Anweisungs;

      (Wenn der Ausdruck den Wert "Werti" besitzt, wird die Anweisungsfolge "Anweisungi" ausgeführt).

    Wiederholung

    Wiederholungsstrukturen ergeben sich, wenn eine Anweisungsfolge zur Lösung einer Aufgabe mehrfach durchlaufen werden soll (z. B. das Bearbeiten aller Komponenten eines Vektors oder Berechnung des Monatslohns aller Mitarbeiter). Es liegt ein nichtlinearer Verlauf mit Rückwärtsverzweigung vor. Die Programmierung einer Wiederholungsstruktur führt zu einer sogenannten "Programmschleife". Wichtig ist die Terminierung der Schleife, d. h. mindestens eine Anweisung muß dafür sorgen, daß nach einer endlichen Zahl von Durchläufen die Bedingung für die Wiederholung nicht mehr erfüllt ist.
    • Abweisende Wiederholung (Eingangsbedingung)
      In diesem Fall steht die Bedingung zu Beginn der Schleife (also vor der Anweisungsfolge). Ist die Bedingung schon beim Eintritt in die Anweisungsstruktur nicht erfüllt, wird die Anweisungsfolge überhaupt nicht ausgeführt.

      SOLANGE Bedingung FÜHRE AUS Anweisungsfolge;

    • Nichtabweisende Wiederholung (Ausgangsbedingung)
      In diesem Fall steht die Bedingung am Ende der Schleife (also nach der Anweisungsfolge). Die Anweisungsfolge wird auf jeden Fall mindestens einmal ausgeführt.

      FÜHRE AUS Anweisungsfolge BIS Bedingung;

    • Zählschleife
      Diese Anweisungsstruktur stellt eine Sonderform der abweisenden Wiederholung dar. Eine Zählvariable wird vor dem Durchlaufen der Schleife mit einem Anfangswert besetzt. Darauf folgt eine abweisende Wiederholung, wobei in der Abbruchbedingung die Zählvariable auf das Erreichen eines Endwertes geprüft wird. Die Anweisungsfolge wird um eine Anweisung zum Inkrementieren bzw. Dekrementieren der Zählvariable erweitert. Die Zählvariable muß skalar sein (z. B. ganzzahlig).

      VON Zählvariable = Startwert BIS Zählvariable = Endwert FÜHRE AUS Ink./Dek. Zählvariable, Anweisungsfolge;

    Unterablaufstrukturen (Unterprogramme)

    Es wurde bereits die Aufteilung von Programmen in einzelne Module angesprochen. Diese Aufteilung auch in einem Programm zu vollziehen erscheint daher wünschenswert. In allen höheren Programmiersprachen und auch im Befehlsumfang nahezu aller Prozessoren ist diese Möglichkeit in Form von Unterprogrammen realisiert. Für die Verwendung von Unterprogrammen (UP) sprechen weitere Gründe:
    • Übersichtlichkeit
      Durch die Verwendung von UP steigen Lesbarkeit und Verständlichkeit des Programms, da sich UP als direkte Abbildung eines Funktionsblocks unter einem aussagekräftigen Namen ins Programm einfügen lassen. Zudem erlauben sie den vom Rest des Programms unabhängigen Test von einzelnen Funktionsblöcken und machen so auch große Programme überschaubar und (relativ) fehlerfrei.
    • Wirtschaftlichkeit
      Häufig werden die gleichen Anweisungsfolgen für unterschiedliche Daten und an verschiedenen Stellen im Programm benötigt. Durch ein Unterprogramm kann eine Anweisungsfolge definiert werden, die dann mehrfach und mit unterschiedlichen Daten "aufgerufen" werden kann --> Code wird kürzer --> weniger Speicherbedarf.
    • Änderungsfreundlichkeit
      Änderungen (z. B. aufgrund neuer Hardware) und Optimierungen betreffen immer nur einige wenige Unterprogramme. Da die Verbindung zum Rest des Programms über eine fest definierte Schnittstelle erfolgt, wirken sich Änderungen in einem i. a. Unterprogramme nicht auf den übrigen Programmcode aus. Voraussetzung dafür sind möglichst unabhängige Unterprogramme.
    • Lokalität
      Die lokale Begrenztheit von Variablen kann durch die Vereinbarung einzelner Variablen im UP hervorgehoben und unterstützt werden. Viele Hochsprachen erlauben es, solche Variablen in ihrer Gültigkeit auf das Unterprogramm zu beschränken (siehe später). Wird der gleiche Variablenname in verschiedenen Unterprogrammen verwendet, ergeben sich keine Konflikte der lokalen Variablen untereinander.
    • Allgemeingültigkeit
      Durch die Erarbeitung möglichst allgemein gültiger UP kann eine "UP-Bibliothek" erstellt werden, deren Inhalt immer wieder bei Programmierproblemen herangezogen werden kann. Die Zeit zum Erstellen neuer Programme wird verkürzt. Sind die Bibliotheks-Routinen sorgfältig getestet, sinkt auch die Fehlerrate bei neu erstellten Programmen. Vielfach lassen sich Bibliotheken zur Lösung spezieller Probleme auch käuflich erwerben.
    • Programmentwicklung im Team
      Mehrere Mitarbeiter entwickeln jeder für sich Unterprogramme mit fest definierten Schnittstellen für die Ein- und Ausgabe von Daten. Die Unterprogramme werden später zum Gesamtprogramm zusammengeführt.

    Ein Unterprogramm muß vor seiner Verwendung vereinbart werden. Die Anweisungsfolge des Unterprogramms wird unter einem möglichst aussagekräftigen Namen zusammengefaßt. Der Aufruf besteht dann nur noch in der Nennung des Unterprogramm-Namens. Dem Unterprogramm können beim Aufruf aktuelle Werte zur Verarbeitung übergeben werden --> Argumente oder Parameter (siehe später).

    Einige Programmiersprachen unterscheiden bei Unterprogrammen Prozeduren und Funktionen (z. B. Pascal). Funktionen sind Unterprogramme, die einen Wert zurückliefern und daher auf der rechten Seite einer Wertzuweisung auftreten dürfen (z. B. Y = SIN(X), SIN ist eine Funktion mit einem Real-Argument, die einen Real-Wert zurückliefert). Bei anderen Sprachen (z. B. C) gibt es ausschließlich Funktionen. Zusätzlich gibt es einen Datentyp VOID, den "leeren" Datentyp, mit dem Funktionen gekennzeichnet werden, die keinen Wert zurückliefern. Für die technische Realisierung von Unterprogrammen auf Maschinenebene bieten sich zwei Möglichkeiten an:

    • offene Unterprogramme
      Bei dieser Form wird der Code des UP an der jeweiligen Aufrufstelle einkopiert. Das UP bildet also nur auf der Ebene der Programmiersprache eine abgeschlossene Einheit und ist im fertigen Programmcode u. U. mehrfach enthalten. Diese Form wird auch als Makro-Technik bezeichnet (naives "Einkopieren").
    • geschlossene Unterprogramme
      Bei dieser Form existieren speziellen Befehle für den Ansprung eines Unterprogramms und den Rücksprung zur Aufrufstelle. Das Unterprogramm ist als Code nur einmal vorhanden. Bei jedem Aufruf wird die aktuelle Positeon in der Anweisungsfolge zwischengespeichert und das Unterprogramm ausgeführt. Danach wird die Programmausführung an der Aufrufstelle fortgesetzt. Wir werden uns nur mit dieser Unterprogramm-Typ befassen.

    Anmerkungen:

    • Es gibt verschiedene Bezeichnungen für den Unterprogramm-Sprung: Jump to Subroutine (Maschinensprache), Function-Call, Funktionsaufruf, Procedurecall, ..
    • Der Rücksprung muß nur in Maschinensprache explizit programmiert werden, z. B. als Return from Subroutine - Befehl (RTS); in höheren Programmiersprachen übersetzt der Compiler das Ende einer Function in den entsprechenden Maschinenbefehl.
    • Von beliebigen Stellen des Hauptprogramms aus kann das selbe Unterprogramm aufgerufen werden, es wird jedoch dafür gesorgt, daß der entsprechende Rücksprung jeweils zu der Anweisung erfolgt, die im Hauptprogramm auf den zuletzt ausgeführten Unterprogrammsprung folgt.

    Darstellung von Algorithmen

    Algorithmen lassen sich auf unterschiedliche Weise darstellen:
    • Verbale Beschreibung
      Der Algorithmus wird in natürlicher Sprache beschrieben. Man kann dies in einer Aufzählung der Befehle machen oder zur Vereinfachung und um die Beschreibung eindeutig zu gestalten, die sprachliche Beschreibung formalisieren; z. B.:

      WENN x größer 0 DANN "berechne Y" SONST "Fehlermeldung ausgeben"

      Also genau das, was im Skript bisher verwendet wurde.

    • Programmablaufplan (PAP)
      Dies ist eine zeichnerische Darstellung mit genormten Symbolen (DIN 66001). Die Verarbeitungssymbole werden von geometrischen Formen umschlossen, deren Bedeutung genormt ist. Ihre Verknüpfung erfolgt durch eine Verbindungslinie, deren Durchlaufrichtung mit Pfeilen markiert ist.
    • Struktogramme
      Auch dies ist eine zeichnerische Darstellung (Nassi-Shneidermann), die jedoch auf Ablauflinien und Übergangsstellen verzichtet (bessere Übersichtlichkeit). Die Beschreibung des Algorithmus besteht aus geschachtelten Strukturelementen.

    PAP und Struktogramm werden in der folgenden Beschreibung der Anweisungsstrukturen gezeigt.

  • DIPLOMARBEITEN UND BÜCHER

    Diplomarbeiten zum Runterladen:

    Suche im Katalog:
    Architektur / Raumplanung
    Betriebswirtschaft - Funktional
    Erziehungswissenschaften
    Geowissenschaften
    Geschichtswissenschaften
    Informatik
    Kulturwissenschaften
    Medien- und Kommunikationswissenschaften
    Medizin
    Psychologie
    Physik
    Rechtswissenschaft
    Soziale Arbeit
    Sozialwissenschaften


    JOBS
    HOME | E-LEARNING | SITEMAP | LOGIN AUTOREN | SUPPORT | FAQ | KONTAKT | IMPRESSUM
    Virtual University in: Italiano - Français - English - Español
    VirtualUniversity, WEB-SET Interactive GmbH, www.web-set.com, 6301 Zug

    Partner:   Seminare7.de - PCopen.de - HTMLopen.de - WEB-SET.com - YesMMS.com - Ausbildung24.ch - Manager24.ch - Job und Karriere