Turbo Pascal, obwohl nicht weltweit beliebtAnwendung für die Programmierung, aber die Schöpfer, die die ersten Schritte beim Schreiben von Software machen, fangen an, sich mit dieser Umgebung vertraut zu machen. Es gibt eine Vorstellung von Verzweigungen, Operatoren, Funktionen und Prozeduren sowie viele andere Dinge. Während des Lernens begegnet der Programmierer beispielsweise Zyklen in Turbo Pascal: While, For und Repeat.

Pascal während

Das Konzept eines Zyklus und seine Vielfalt

Ein Zyklus wird wiederholte Aktionen genannt. In dieser Umgebung verwenden wir:

  • mit dem Parameter (For ... to ... do);
  • mit einer Vorbedingung (While ... do);
  • mit einer Nachbedingung (Wiederholen ... bis).

Die erste Art wird verwendet, wenn es im Voraus bekannt ist,Wie viele Schritte zur Lösung des Problems. Es gibt jedoch eine Reihe von Aufgaben, wenn keine Informationen darüber vorliegen, wie oft die eine oder die andere Aktion wiederholt wird. In diesem Fall wird im Pascal While Zyklus unabdingbar, wie im Prinzip und Repeat.

Struktur des Zyklus

Was ist die Essenz der Arbeit in Pascal While, Forund wiederhole Zyklen? Diese Strukturen haben einen Header und einen Body. Die erste Komponente gibt die Variablen an, die "funktionieren", legt die Bedingungen für die Überprüfung der Wahrheit fest, den Zeitraum, bis zu dem der Körper ausgeführt wird. In der zweiten Komponente werden Ausdrücke geschrieben, die verwendet werden müssen, wenn die Bedingung erfüllt ist, dh Wahr, und nicht Falsch.

Wenn die Iteration in der letzten Zeile ausgeführt wirdCode, dann kehrt es zum Header zurück, wo die Bedingung geprüft wird. Im Falle der Wahrheit werden die Operationen wiederholt, und im Falle der Nichterfüllung der Bedingung "verlässt" das Programm den Zyklus und führt weitere Operationen durch.

Die While-Schleife sieht so aus. Pascal ABC und ähnliche Programme erfordern das Schreiben dieses Codes:

  • Während Zustand tun;
  • Beginnen Sie;
  • Der Körper des Zyklus;
  • Ende.

Für den Fall, dass 1 Operator (1 Aktion) im Körper der Schleife ausgeführt wird, können die "Begin" -Endklammern weggelassen werden.

Flussdiagramm des Zyklus

In Turbo Pascal Während hat die folgenden Funktionen:

  • Komplexe Bedingungen können innerhalb der Struktur verwendet werden;
  • nach dem Wort do sollte es kein Semikolon geben (dies wird in Turbo Pascal und Pascal ABC als Fehler angesehen);
  • Eine Variable, eine Konstante oder ein Ausdruck, der als False-Ausgabe ihrer Subroutine dient, muss einen logischen Typ haben, dh Boolean.

Das Blockdiagramm dieser Version des Zyklus sieht folgendermaßen aus. Es zeigt die Abfolge der Aktionen.

Pascal abc während

Der Algorithmus des Zyklus

In den einfachsten Programmierumgebungen, einschließlich Pascal ABC, während die Schleife nach dem folgenden Prinzip arbeitet:

  • die gegebenen Iterationen, d. h. die Wiederholungen, werden so oft durchlaufen, bis die Bedingung wahr ist (Wahr);
  • Sobald die Bedingung nicht erfüllt ist und eine falsche Antwort (oder sonst "False") gibt, verlässt die Anweisung die Schleife;
  • Sobald das passierte, "ging" das Programm in den Konstruktionen, die nach dem Zyklus sind.

Dies ist ein wesentlicher Unterschied von While from Repeat, dh ein Zyklus mit einer Vorbedingung von einer Nachbedingung.

Es ist sehr wichtig, ein Endliches zur Verfügung zu stellenÄndern Sie die angegebene Variable im While-Header. In jedem Fall sollte irgendwann eine Situation eintreten, die den Wert Falsch angibt. Andernfalls wird die Schleife auftreten, und Sie müssen zusätzliche Maßnahmen verwenden, um den Compiler zu beenden. Solche Fehler gelten als unhöflich und unverzeihlich.

Wie beende ich das Programm während des Loopings?

Oft gibt es eine Situation, wenn der BetreiberWährend Pascal eine Schleife im geschriebenen Code erzeugt. Was bedeutet das? Die Iteration wird unendlich oft wiederholt, weil die Bedingung immer wahr ist. Zum Beispiel ist hier ein Fragment des Programms:

  • Während 2> 1 tun;
  • Schreibe (1).

Um in diesem Fall die Aufgabe zu stoppen, drücken Sie einfach STRG + F2.

Es gibt zwei weitere Möglichkeiten, dies zu kontrollierendas Verhalten des Programms. Wenn Sie zum Beispiel den Code Continue eingeben, wird die Steuerung an den Anfang der zyklischen Konstruktion übergeben (hier wird die Ausgangsbedingung aus der Schleife gesteuert, d. H. Die Ausführung der aktuellen Iteration wird unterbrochen). Dann wird die Kontrolle in der While-Schleife an die vorherige Prüfung übergeben.

Die Break-Anweisung kann die Ausführung von allen unterbrechenZyklus und übergeben Sie die Kontrolle an die nächste Iteration. Hier wird die Ausgabe von der Struktur nicht gesteuert. Das Bild zeigt Beispiele für die Verwendung dieser Operatoren.

während Betreiber Pascal

Problemlösung

Betrachten Sie die While-Schleife. Pascals Aufgabe ist es, eine große Vielfalt zu lösen. Lassen Sie uns auf die einfachste Weise eingehen, um das Prinzip der Arbeit zu verstehen. Gelöste Aufgaben im Programm Pascal ABC. Bilder der klassischen Turbo-Pascal-Umgebung werden zum Vergleich präsentiert.

Aktivität 1: die Funktion Y = 5-X ^ 2/2 ist gegeben. Erstellen Sie eine Tabelle von Werten mit dem Schritt sh = 0.5 im Intervall [-5; 5].

Algorithmus der Aktionen:

  • setze den Anfangswert für die Variable X gleich -5 (dh den Beginn des Intervalls);
  • Berechnen Sie den Wert von Y, bis die Variable x das Ende des angegebenen Segments erreicht;
  • zeige die Werte der Funktion und Abszissen (X) an;
  • Erhöhen Sie X um den angegebenen Schritt.

Dies ist der Code im Pascal ABC-Programm.

während pascal Aufgaben

Wie sieht der Code in Turbo Pascal aus? Das Bild unten zeigt dies deutlich.

während pascal Aufgaben

Aktivität 2: Gegeben ein Array A, bestehend aus positiven ganzen Zahlen undnegative Zahlen. Es enthält 10 Elemente. Es ist notwendig, eine Matrix B zu bilden, in der positive Elemente des Arrays A mit einem geraden Index angezeigt werden. Zeigen Sie auf dem Bildschirm die Summe der Quadrate in der Nummer der neuen Matrix an.

Algorithmus der Aktionen:

  • Es ist notwendig, eine Subroutine zu schreiben, die nur mit Elementen des Arrays A arbeitet, die einen geraden Index haben. In der Schleife wird der Wert der Variablen, die für die Parität des Index verantwortlich ist, um 2 erhöht.
  • Wenn eine Zahl mit einem geraden Index von der Matrix Aentspricht der Bedingung x> 0, dann wird der Zähler der Array-Elemente um 1 inkrementiert. Der aktuelle Wert der Zählervariablen ist der Index der kopierten Zahl in Array B.
  • Zunächst wird die Variable summa zum Auffinden der Summe der Quadrate der positiven ganzen Zahlen verantwortlich ist, dann auf 0 gesetzt ist, wird die Operation durchgeführt: zum vorherigen Summe wird den neuen Wert eines Quadrats gegeben.
  • Habe keine Angst, wenn nicht alles positivZahlen gingen von einer Matrix zur anderen über. Du musst vorsichtig sein. Viele Anfänger Programmierer schreiben den Code in Panik. Es ist notwendig, die Bedingung sorgfältig zu studieren: positive Zahlen, die an geraden "Stellen" sind, dh mit Indizes, die Vielfache von 2 sind.

Schleife während Pascal abc

Die manuelle Verfolgung ist notwendig, um die Richtigkeit der Berechnungen zu überprüfen. Manchmal können Sie mit Hilfe dieser Methode Fehler erkennen, die Ihnen beim normalen Überprüfen des geschriebenen Codes nicht auffallen.

Schleife während Pascal abc

Wenn Sie eine manuelle Berechnung durchführen,dass das Programm korrekt funktioniert. Dies wiederum zeigt an, dass der Algorithmus zum Erzeugen des Codes korrekt ist, die Abfolge von Aktionen führt zu einem logischen Ende.

</ p>