/ / Programmierung. Grundlegende algorithmische Konstrukte

Programmierung Grundlegende algorithmische Konstrukte

Zum Erstellen von Programmen benötigen Sie Basicalgorithmische Konstruktionen. Das Befolgen ist der einfachste Weg, um Probleme zu lösen. Es kann zum Beispiel verwendet werden, um mit ähnlichen Beispielen zu arbeiten. Es gibt andere Arten: Verzweigen und Schleifen. Sie werden in diesem Artikel beschrieben. Aber zuerst müssen Sie verstehen, was den Algorithmus als Ganzes ausmacht.

Algorithmus

Das Wort "Algorithmus" stammt aus dem lateinischen algoritmi.Was bedeutet es Das authentische Wort kam vom Namen eines Mathematikers, dessen Tätigkeit auf das 9. Jahrhundert fiel. Dank der Abhandlung von al-Khwarizmi konnte sich die Menschheit mit der Hauptart der algorithmischen Konstruktion und im Allgemeinen mit dem allgemeinen Konzept vertraut machen.

Früher wurde die Schreibweise des Wortes übernommen - "Algorithmus". Jetzt wird es nur in einigen Fällen verwendet.

Ein Algorithmus ist ein Prozess, der Veränderung bedeutetQuelldaten, die in Form von diskreten Schritten auftreten. Mit diesem Konzept begegnet jeder Mensch im Leben, egal wer er ist. Algorithmen können als Kochen von Tee oder Essen, Multiplikation oder Addition, Lösen von Gleichungen usw. bezeichnet werden. Alle Haushaltsgeräte, deren Arbeitsprozess automatisiert ist, arbeiten aufgrund der im Prozessorspeicher festgelegten klaren Schritte. Solche Algorithmen werden als Haushaltsalgorithmen bezeichnet. Es gibt andere Arten. Betrachten Sie sie.

Arten von Algorithmen

Die grundlegenden algorithmischen Konstruktionen sind in verschiedene Typen unterteilt, auf die in diesem Unterabschnitt eingegangen wird. Wie sind sie?

  1. Information. Solche Algorithmen arbeiten mit einer großen Datenmenge, aber das Volumen des Verarbeitungsprozesses ist gering und unkompliziert.
  2. Manager. Der Betrieb solcher Algorithmen ist mit Informationen verknüpft, die von einer bestimmten Quelle bereitgestellt werden. Nach dem Empfang werden spezielle Signale gesendet, die den Betrieb der Geräte gewährleisten.
  3. Computational. Im Gegensatz zu Informationsalgorithmen arbeiten die beschriebenen mit kleinen Datenmengen, erzeugen jedoch einen großen Arbeitsprozess.

Im Wesentlichen ist der Algorithmus auf das kleinste genauDetails Anleitung. Es können jedoch nicht alle derartigen Daten als das beschriebene Konzept bezeichnet werden. Um zu verstehen, ob ein Algorithmus eine Anweisung ist oder nicht, sollte er auf bestimmte Eigenschaften überprüft werden.

Algorithmus-Eigenschaften

Alle grundlegenden algorithmischen Konstrukte müssen Aktionen enthalten, die ihnen „gehorchen“. Lassen Sie uns diese Frage genauer betrachten.

Wenn Sie die Funktionsweise der Algorithmen und ihrer Funktionen vollständig verfolgenEigenschaften, können Sie sehen, dass es nicht notwendig ist, ihre Komponenten zu verstehen, ganz klar auf den Plan entsprechen. Das richtige Ergebnis wird auch dann erzielt, wenn Sie die erforderlichen Maßnahmen einfach mechanisch einhalten. Daraus können wir schließen, dass der Algorithmus aufgrund des mangelnden Sinns für das Erkennen von Handlungen für die Implementierung des Computers durchaus realistisch ist. Mit anderen Worten, für automatisierte Geräte ist dieser Prozess erforderlich.

Welche Eigenschaften sollten die grundlegenden algorithmischen Konstruktionen für die genaueste Operation haben?

  1. Klarheit.Jeder Befehl sollte für das auszuführende Objekt so klar wie möglich sein. Es scheint nichts einfacher zu sein, als zum Beispiel einen Punkt in der Mitte zu zeichnen, nein, aber bis ein Befehl geschrieben wurde, mit dem Sie eine Aktion ausführen können, wird es Ihnen nicht gelingen.
  2. Leistung.Was bedeutet diese Eigenschaft? Obligatorischer Eingang des Ergebnisses. Der Algorithmus kann nur zu einer Antwort führen. Aufgrund des Fehlers können Sie nicht das gewünschte Ergebnis erhalten, aber es wird dennoch sein. Darüber hinaus muss die Antwort in einer bestimmten Anzahl von Schritten erhalten werden.
  3. Massivität. Jeder Algorithmus sollte auf eine bestimmte Klasse von Problemen anwendbar sein. Sie können sich untereinander in den Quelldaten unterscheiden.
  4. Gewissheit.Jede Aktion sollte nur eine Bedeutung haben und nicht die Möglichkeit einer abgeleiteten Entschlüsselung bieten. Unabhängig davon, wie oft das Programm startet, sollte das Ergebnis immer das gleiche sein.
  5. Diskretion. Algorithmus - sequentielle Schritte. Jeder Schritt ist ein Team, Sie können keine überspringen oder neue hinzufügen.
  6. Richtigkeit.Jeder Algorithmus, der für eine Aufgabe gilt, sollte für jeden geeignet sein. Bei der Programmierung treten Probleme häufig nicht beim Schreiben von Schritten auf, die oft nicht viel Zeit erfordern, sondern beim Ausführen für verschiedene Arten von Fragen. Daher wird ein wichtiger Schritt das Debuggen des Algorithmus sein. Die grundlegenden algorithmischen Konstrukte können dabei helfen, deren Wiederholung zu besseren Ergebnissen führt.

Beschreibung der Algorithmen

Wenn wir über Möglichkeiten zum Schreiben von Algorithmen sprechen, sollte Folgendes hervorgehoben werden:

  • Verbal. Mit anderen Worten, in einer Sprache, in der die Komponente bequem kommunizieren kann.
  • Tabellarisch. Nach der Logik der Dinge wird der Algorithmus in Tabellen geschrieben und in der Regel als Hilfselement verwendet.
  • Formular verbal. Die verbale Art der Erklärung wird als Grundlage genommen, aber auch mathematische Formeln oder Symbole werden in solchen Handlungen geschrieben.
  • Grafik. Ein solcher Algorithmus ist in einer speziellen Sprache von Flussdiagrammen geschrieben.

Der letzte Punkt sollte geklärt werden.Was ist ein Flussdiagramm? Dies ist ein linearer oder nichtlinearer Algorithmus, dessen Schritte mit speziellen Blöcken aufgezeichnet werden. Sie haben ihre eigene Konfiguration, Zweck und Funktion. Im Fall einer solchen Beschreibung wird der Algorithmus in Blockdiagrammen geschrieben, die durch Linien miteinander verbunden sind. In ihnen ist es notwendig, zusätzlich die eine oder andere Aktion (Schritt) aufzuschreiben.

grundlegende algorithmische Konstrukte

Algorithmische Konstruktionen

Einige argumentieren, dass Algorithmen keine 3 habenTyp und 4. Grundlegende algorithmische Konstruktionen: linear, verzweigt, zyklisch. Was der Grund für einen solchen Irrtum ist, ist nicht klar. Für eine einfache Lösung komplexer Probleme verwenden Computer jedoch die Algorithmen dieser drei ziemlich großen Gruppen. Betrachten Sie sie.

  1. LinearEin solcher Rechenprozess erhielt diesen Namen aufgrund der Tatsache, dass alle Aktionen in einer linearen Reihenfolge ausgeführt werden, wobei jeder Schritt nicht mehr als einmal ausgeführt wird. Wenn wir das Aufgabenschema betrachten, werden die darin enthaltenen Blöcke abhängig von der Sequenznummer der Ausführung untereinander platziert. Lineare Algorithmen arbeiten so, dass sich Richtung und Bedeutung von Aktionen gegenüber den Quelldaten nicht ändern. Diese Lösungsmethode eignet sich zur Berechnung der Summe oder Differenz, der Fläche einer Figur oder ihres Umfangs usw. Er ist der Haupttyp der algorithmischen Konstruktion.
    Algorithmus grundlegende algorithmische Konstrukte
  2. Verzweigung.Dieser Berechnungsprozess impliziert das Vorhandensein eines logischen Ausdrucks (im Folgenden als LP bezeichnet) und die Wahl einer Bedingung (die Zweige "falsch" und "wahr"). In jedem Fall ist nur eines von zwei oder mehr Teams implementiert. Es gibt keine Aufgaben und kann nicht sein, in denen andere Optionen erfüllt werden. Wenn der Algorithmus zwei Zweige hat, ist es einfach, wenn mehr als zwei, ist er komplex. Darüber hinaus kann der letztere Prozess leicht auf Kosten des ersten dargestellt werden. Die Hauptart der algorithmischen Konstruktion ist sowohl der erste als auch der zweite Absatz. Die folgende Ansicht ist ebenfalls in dieser Liste enthalten.
  3. Zyklisch. In einem solchen Algorithmus wird es sicherlich ein Element geben, das viele Male wiederholt wird, während unterschiedliche Quelldaten verwendet werden. Mit anderen Worten wird ein solcher Prozess als Zyklus bezeichnet.

Es ist zu beachten, dass alle grundlegenden algorithmischen Konstruktionen (Folgen, Verzweigen, Schleifen) miteinander verbunden sind, obwohl sie separat verwendet werden können.

Erstellen von Schleifen und deren Typen

Was wird benötigt, um eine Schleife zu erstellen?

  • Zykluszähler.Dies ist eine Variable, die den Anfangswert festlegt. Wenn die Aktion wiederholt wird, ändert sie sich. Es muss im Algorithmus enthalten sein. Die grundlegenden algorithmischen Konstrukte des zyklischen Typs funktionieren ohne sie nicht.
  • Änderung des Indikators der obigen Daten vor einer neuen Wiederholung des Zyklus selbst.
  • Überprüfen Sie den Zustand, damit der Computer entscheidet, ob er erneut fährt oder nicht.

Schleifen können deterministisch sein unditerativ. Die erste ist eine Wiederholung von Aktionen mit einer bereits bekannten Anzahl von Wiederholungen. Ein iterativer Zyklus wird unbestimmt oft wiederholt, bis eine Bedingung wahr oder falsch wird.

Die Hauptart des algorithmischen Entwurfs ist

Grundlegender Algorithmus

Es lohnt sich, sich hauptsächlich daran zu erinnernAlgorithmische Konstruktionen enthalten nicht den Basisalgorithmus. Wie ist er? Dieses Konzept ist in der modernen Literatur schon lange nicht mehr zu finden, bedeutet aber nicht, dass es überhaupt nicht mehr existiert. In Anbetracht der Tatsache, dass bei der Lösung von Problemen mehrere Zweige oder Wiederholungen auftreten können, können wir die folgende Schlussfolgerung unterscheiden. Die grundlegenden algorithmischen Konstruktionen (linear, verzweigt, zyklisch) sind grundlegend. Tatsächlich stellen sie die „strukturelle Einheit“ jeder sogenannten Anweisung dar.

Lineare Algorithmen

Wie bereits aus dem Obigen ersichtlich, sind die Algorithmenes gibt lineare und nichtlineare. Betrachten Sie die erste Option. Warum heißt er so? Alles ist sehr einfach. Tatsache ist, dass alle Aktionen, die im Algorithmus reproduziert werden, eindeutig sequentiell ausgeführt werden und alle Schritte streng nacheinander ausgeführt werden. Solche Aufgaben sind in der Regel klein und wenig komplex.

Ein Beispiel für einen linearen Algorithmus ist der Prozess der Teezubereitung:

  1. Gießen Sie Wasser in den Wasserkocher.
  2. Stellen Sie den Wasserkocher zum Kochen auf den Herd.
  3. Nimm eine Tasse.
  4. Tee in eine Tasse gießen.
  5. Zucker hinzufügen.
  6. Gießen Sie nach dem Kochen kochendes Wasser in eine Tasse.
  7. Nimm einen Löffel.
  8. Rühren Sie den Zucker.

Das Programmieren der grundlegenden algorithmischen Konstruktionen ist eine ziemlich schwierige Aufgabe, aber wenn es um lineare Algorithmen geht, ist es oft sehr einfach, sie zu implementieren.

gilt nicht für grundlegende algorithmische Konstrukte

Verzweigungsalgorithmen

Wie kann man verstehen, dass der Algorithmus verzweigt?Es reicht aus, sicherzustellen, dass je nach Erfüllung oder Nichterfüllung der Bedingung zwischen zwei oder mehr Optionen gewählt werden kann. Jeder Pfad wird als Zweig bezeichnet.

Das Hauptmerkmal eines Verzweigungsalgorithmus ist das Vorhandensein eines bedingten Übergangs. Es tritt auf, während der Ausdruck auf wahr oder falsch überprüft wird.

In der Regel werden logische Ausdrücke dargestelltZeichen kleiner als, größer als, kleiner als oder gleich, größer als oder gleich, gleich, ungleich. Manchmal gibt es Optionen, bei denen die Bedingung mit den Befehlen und (und) und / oder (oder) verbunden wird.

Ein Beispiel für einen solchen Algorithmus könnte eine Lösung seinder folgenden Aufgabe: Wenn der Ausdruck ((x + 3) / 1) gleich einer positiven Zahl ist, zeigen Sie das Ergebnis auf dem Bildschirm an. Wenn es negativ ist, informieren Sie den Benutzer über den Fehler.

In der Praxis ist es recht einfach, die grundlegenden algorithmischen Konstrukte zu verwenden. Verzweigung ist eine der häufigsten Lösungsmethoden.

Deterministischer oder Gegenzyklus

Zählzyklus - Ein Zyklus, der Folgendes umfasstEine Variable, die den Wert mit einem bestimmten Schritt ändert. Der Schritt wird vom Benutzer festgelegt oder vom Programmierer beim Schreiben der Software vorgeschrieben. Die meisten Sprachen für diese Schleife verwenden die for-Anweisung.

Damit das Programm viermal zwei Zeilen anzeigt:

  1. "Wie geht es Ihnen?"
  2. "Gut, danke!"
  3. "Wie geht es Ihnen?"
  4. "Gut, danke!"

Es ist notwendig, einen deterministischen Zyklus zu erstellen. Wie sieht es aus? Wir verwenden die Pascal-Sprache für eine bessere Wahrnehmung des Designs.

1. Für i: = 1 bis 2 tun Sie:

- i ist der Schleifenzähler, er bestimmt die Anzahl der Wiederholungen in der Schleife.

2. Beginnen Sie (Operator-Klammern werden geöffnet, sodass beide Phrasen den Hauptteil der Schleife bilden und zusammen wiederholt werden.)

3. Writeln (‘Wie geht es dir?’):

- Das Wort writeln bedeutet die Ausgabe einer Phrase in einfachen Anführungszeichen.

4. Writeln („Gut, danke“).

5. Beenden.

6.i: = i + 1.

Wie Sie sehen können, ist es recht einfach und sogar interessant, die grundlegenden algorithmischen Konstrukte zu verwenden. Die grundlegenden Algorithmen sind weithin bekannt, ohne sie ist es unmöglich, Programme zu schreiben.

grundlegende algorithmische Konstrukte lineare Verzweigung zyklisch

Nachbedingungsschleife

Цикл с постусловием может повторять eine unbestimmte Anzahl von Aktionen, ohne dass Operator-Klammern oder zusammengesetzte Wörter eingefügt werden. Es wird mindestens einmal ausgeführt. Die Schleife wird ausgeführt, während die Bedingung falsch ist. Es stoppt, wenn die Anzeigen korrekt werden. Der Algorithmus baut darauf auf. Die grundlegenden algorithmischen Konstruktionen dieses Typs arbeiten genau in diesem Tempo.

Для реализации этого цикла необходима конструкция Wiederholen Sie A bis B. Wörtlich bedeutet dies "Aktionen wiederholen, bis die Bedingung falsch ist". Dementsprechend wird durch A der Wiederholungsprozess durch B - Daten ausgedrückt, die als Ergebnis den richtigen Wert annehmen sollten.

grundlegende algorithmische Konstrukte grundlegende Algorithmen

Vorkonditionierter Zyklus

Цикл с постусловием строится таким образом, что es wird in jedem Fall mindestens einmal ausgeführt. Es gibt jedoch Fälle, in denen ein Zyklus im Falle einer bestimmten Bedingung erforderlich ist und in dessen Abwesenheit keine Wiederholungen durchgeführt werden sollten. Andernfalls ist das Ergebnis falsch. In diesem Fall wird ein Zyklus mit einer Vorbedingung verwendet. Um es zu erstellen, wird das Konstrukt "while A do B" benötigt. Der erste Befehl bedeutet wörtlich „Tschüss“. A ist die Bedingung und B ist die Aktion, die wiederholt wird. Die gesamte Konstruktion bedeutet: "Solange die Bedingung erfüllt ist, führen Sie die Aktion aus."

Все основные алгоритмические конструкции работают nur in bestimmten Fällen. Was sind sie in einem Zyklus mit einer Vorbedingung? Wenn mehr als eine Aktion wiederholt werden muss, jedoch mehrere gleichzeitig, lohnt es sich, entweder zusammengesetzte Operatoren oder spezielle Klammern zu verwenden. Ein Zyklus kann durchaus fehlschlagen, wenn die Bedingung beim Eintritt nicht erfüllt ist. Dementsprechend werden die Aktionen wiederholt, wenn sie korrekt sind.

Wiederholung der grundlegenden algorithmischen Konstruktionen

Hilfsalgorithmus

In anderen wird ein Hilfsalgorithmus verwendetProzesse, indem nur sein Name angegeben wird. Es gilt nicht für die grundlegenden algorithmischen Konstruktionen. In Programmiersprachen wird dieser Prozess als Unterprogramm bezeichnet. Um die Arbeit mit dem Code und anschließend das Lösen von Aufgaben zu erleichtern, wird jede Aktion in einem Block zusammengefasst, bei dem es sich um einen Hilfsalgorithmus handelt. Jeder von ihnen kann einen eigenen Namen erhalten, sodass Sie anschließend wiederholt darauf verweisen können.

Mochte:
0
Beliebte Beiträge
Spirituelle Entwicklung
Essen
Ja