Was ist der Unterschied zwischen Pseudocode und Algorithmus?

In sehr einfachen Worten, Pseudocode ist eine narrative Beschreibung der Algorithmuslogik.

Pseudocode ist kein ausführbarer Code, daher ist es nicht zwingend erforderlich, eine exakte Syntax zu verwenden. Es ist jedoch hilfreich, einem in der Branche weit verbreiteten Standard zu folgen, der für das Lösungsteam leicht verständlich ist.

UML (Unified Modeling Language) und andere Methoden zur Geschäftsmodellierung können auch als Beispiele für Pseudocode bezeichnet werden. Diese Tools sind zwar nicht rein textbasiert, werden jedoch zur visuellen Darstellung einer ausführbaren Aufgabe oder eines Prozesses verwendet.

Es ist empfehlenswert, strukturierten und vollständigen Pseudocode eindeutig zu dokumentieren, um eine genaue Übersetzung zu ermöglichen, und er ist ein wesentlicher Bestandteil bei der Planung der Lösung und der Programmierlogik.

Wenn der Pseudocode für einen Algorithmus nicht vorhanden ist, wird unnötige Zeit aufgewendet, um die Lösung zu überdenken oder eine vage Idee in der Codierungsphase zu extrahieren, normalerweise mit einer sich abzeichnenden Frist.

Bei der Fehlerbehebung bei einem Algorithmus gibt der Pseudocode den Hintergrund an, wie er zusammengesetzt wurde, und der Entwickler ist möglicherweise nicht immer in der Nähe, um ihn zu ermitteln.

Sehen Sie sich dieses Pseudocode-Beispiel von der Khan Academy an[ich]:

Dies ist ein textbasierter Pseudocode, der in einem Software-Entwicklungstool geschrieben ist.

Die vorangegangenen Striche // zeigen an, dass der Text ein Kommentar ist (oder in der Entwicklung auskommentiert) und daher nicht Teil des ausführbaren Codes ist.

Der untenstehende Fetttext zeigt die Syntax und die Dimensionen des Entwicklers, wenn diese von den Anforderungen im Pseudocode in ausführbaren Code interpretiert werden.

// Wie bringen wir unsere Ideen in den Code ein??

// Zeichne das Gesicht, ein Oval in der Mitte
Ellipse (Breite /2, Höhe/2, 200, 300);

// Zeichne die beiden Augen, zwei Ovale, etwa 2/3 in das Gesicht und 1/5 in die Größe des Gesichts
Ellipse (Breite /2 - 40, Höhe/2 - 50, 40, 40);
Ellipse (Breite /
2 + 40, Höhe/2 - 50, 40, 40);

Ein weiteres Beispiel zeigt einen technischeren und strukturierteren Ansatz zum Schreiben von Pseudocode:

Wenn die Note des Schülers größer oder gleich 60 ist

"Gut gemacht" drucken

sonst

"Entschuldigung, du hast versagt" drucken

Wenn auf strukturierten Pseudocode Bezug genommen wird, gibt es Standardbegriffe, die die Algorithmuslogik darstellen, wie z SEQUENZ, WÄHREND, WENN-DANN-ELSE und zusätzliche Konstrukte, die auch nützlich sind, umfassen WIEDERHOLE BIS, FALL, und ZUM.

Diese Begriffe werden von Entwicklern verstanden und sind hilfreich, um Anforderungen zu erstellen, ohne Slang- oder persönliche Ausdrücke zu verwenden, die von anderen möglicherweise nicht verstanden werden.

  • SEQUENZ gibt die Ausführung von Aufgaben von oben nach unten an.
  • WÄHREND ist eine Wiederholungsschleife, die ausgeführt wird, bis eine zu Beginn definierte Bedingung erfüllt ist.
  • WENN-DANN-ELSE ist eine Entscheidung, die zwischen zwei Bedingungen getroffen wird:
Beispiel

WENN StundenWorked> NormalWeek THEN

Anzeige der Überstunden-Arbeitszeittabelle

SONST

Normale Arbeitszeitnachricht anzeigen

  • WIEDERHOLE BIS ist eine repetitive Schleife, die ausgeführt wird, bis eine am Ende definierte Bedingung erfüllt ist.
Beispiel

WIEDERHOLEN

Sequenz

BIS ZUSTAND

  • FALL ermöglicht mehrere Entscheidungen basierend auf dem Wert eines Ausdrucks.
  • ZUM ist eine sich wiederholende Zählschleife

Beachten Sie, dass Sie für jede Aufgabe oder jeden Prozess die ENDE/ENDIF (wo IF verwendet wird) am Ende, um anzuzeigen, dass es sich um den Endpunkt oder das Ausgabeergebnis handelt.

Wenn Konstrukte ineinander verschachtelt sind, müssen sie eindeutig von ihren übergeordneten Konstrukten eingerückt sein. Mit anderen Worten, alle Anweisungen, die eine Abhängigkeit zeigen, sollten eingerückt sein.

Verwenden Sie bei Verben die Wörter, die "tun", Begriffe wie "Prozess", "Computer", "Zurücksetzen", "Inkrementieren", "Hinzufügen", "Multiplizieren", "Drucken", "Anzeigen" usw. und beachten Sie, dass der Einzug den gewünschten Pseudocode fördert.

Schauen wir uns nun die Algorithmen an und wie sie sich vom Pseudocode unterscheiden.

Erstens, was ist ein Algorithmus?

„Informell ist ein Algorithmus ein genau definiertes Rechenverfahren, das dauert
ein Wert oder eine Menge von Werten als Eingabe und erzeugt einen Wert oder eine Menge von Werten als
Ausgabe. Ein Algorithmus ist somit eine Folge von Rechenschritten, die die
Eingabe in die Ausgabe
.” [ii]

Einfacher ausgedrückt ist ein Algorithmus eine ausführbare Codelogik, die durch eine Folge von Schritten definiert wird, um ein Problem zu lösen oder eine Aufgabe abzuschließen.

Im Gegensatz zum Pseudocode benötigt die Person, die den Algorithmus schreibt, Programmierkenntnisse, da sie vom Computer interpretiert werden - kein Entwickler - Tasks ausführen, Daten bearbeiten, verschlüsseln und extrahieren.

Algorithmen weisen ein Computerprogramm grundsätzlich an, eine Aufgabe auszuführen, wie in der Codelogik definiert. Fehler in einer Programmiersyntax verhindern die erfolgreiche Ausführung dieser Aufgaben. Hier werden Programmierkenntnisse benötigt.

Denken Sie beim Schreiben von Pseudocode in der Planungsphase daran, dass der Algorithmus effektiv und fokussiert sein muss und ein Endergebnis erreichen muss. Alle Aspekte der Lösung müssen immer berücksichtigt werden.

Was macht der Algorithmus? Grundsätzlich wird es von einem Trigger oder Prozess oder einem anderen Algorithmus ausgeführt und akzeptiert Daten als Eingabe. Die Daten durchlaufen die Anweisungen und Anweisungen zur Erzeugung der Ausgabe.

Die Daten werden in Variablen gespeichert und jede Variable wird nach dem Algorithmus benannt, um die Daten während des Ausführungsprozesses zuzuweisen.

Algorithmen werden auch benannt, weil sie Verweise und Aufrufe anderer Algorithmen enthalten können. Bei der Entwicklung von Algorithmen kann es unabhängig von der verwendeten Codierungssoftware viele Komplexitäten und technischen Besonderheiten geben. Daher müssen sie genau definiert werden, um genaue und gewünschte Ergebnisse zu erzielen.

Ein weiterer wichtiger Aspekt, der beim Entwurf und der Implementierung eines Algorithmus zu berücksichtigen ist, ist die Geschwindigkeit, mit der er ausgeführt wird. Dies wird immer deutlicher bei Endbenutzern, die sich an schnellere Software und schnellere Geräte gewöhnen.

Das Anwenden von Filtern auf Suchkriterien und das ungewöhnlich lange Warten auf die Anzeige der Ergebnisse kann beispielsweise eine unangenehme Erfahrung sein. Die Entwickler würden dann untersuchen, wie und wann die Daten empfangen werden, ob die Daten in einem Unterprozess gefiltert werden können usw..

Das Schreiben einer Codelogik, die jeden Prozess verlangsamt, hat negative Auswirkungen auf Benutzer, Entwickler und Unternehmen.

Zusammenfassend ist Pseudocode eine wichtige Erzählung für die Planung von Codelogik und die Implementierung robuster Lösungen. Diese Lösungen werden mit gut strukturierten, schnellen und effektiven Algorithmen implementiert, die genaue und gewünschte Ergebnisse liefern.