Pseudocode sollte die gesamte Logik des Algorithmus beschreiben, sodass die Programmierung zu einer Aufgabe wird, Pseudocodezeilen in echten Code zu übersetzen.
Lassen Sie uns für jeden der folgenden Punkte diskutieren, warum jeder Pseudocode als „gute“ oder „schlechte“ Pseudocode-Beispiele angesehen werden kann:
Beispiel 1.1:
PROGRAM IsEvenOrOdd:
var num = number;
IF (num % 2 === 0)
THEN Print "even";
ELSE Print "odd";
ENDIF;
END.
F. Was denken wir?
A. Das ist kein großartiges Beispiel. Hier verwenden wir „var“ in unserem Pseudocode, obwohl er einfaches Englisch lauten sollte! Außerdem sollten wir in unserer Bedingung nicht die Javascript-Syntax „===“ verwenden. Wüsste ein Nicht-Programmierer, dass
num % 2 === 0
eine gerade Zahl angibt?
Beispiel 1.2:
PROGRAM IsEvenOrOdd:
Read number;
IF (number divided by two has no remainder)
THEN Print the number is even;
ELSE Print the number is odd;
ENDIF;
END.
F. Was denken wir?
A. Das ist besser. Es ist eher Englisch. Darin wird klar dargelegt, was wir erreichen wollen und wie, ohne uns in den Details des Codes zu verlieren. Sogar jemand, der nicht programmiert, kann uns helfen, unsere Logik zu überprüfen. Ist jede Zahl, die sauber durch zwei geteilt werden kann – ohne einen Rest zu hinterlassen – gerade? Ist sonst noch etwas seltsam?
Von Get Creative Today
Beispiel 2.1:
Make PB&J Sandwich:
Gather bread, peanut butter and jelly.
Apply peanut butter to slice of bread.
Apply jelly to another slice of bread.
Bring the two slices of bread together.
Eat and enjoy.
F. Was denken wir?
A. Dies ist ein guter Anfang. Es handelt sich um eine gute Anleitung, die für uns intuitiv zu befolgen ist. Wir wissen jedoch immer noch nicht, welche physischen Schritte erforderlich sind.
Nehmen Sie sich eine Sekunde Zeit, um es sich vorzustellen. Stellen Sie sich vor, Sie hätten noch nie ein Sandwich gemacht. Immer. Denken Sie über die Anweisungen nach, die Sie für das erste Sandwich benötigen würden. Ein Computer hat kein wirkliches Gedächtnis. Jedes Mal, wenn eine Aufgabe gestartet wird, kann sie sich nicht daran erinnern, sie zuvor ausgeführt zu haben. Wir müssen es bei jedem einzelnen Schritt und bei jedem einzelnen Mal erzählen. Wir müssen diese in kleinere Schritte zerlegen, damit der Computer sie verstehen kann.
Beispiel 2.2:
PROGRAM MakePB&JSandwich:
Grab a paper plate;
Open bread container;
Grab bread package;
Untwist bread package;
Open bread bag and remove two slices;
Place slices on paper plate;
Grab a plastic knife;
Open peanut butter jar;
Use knife to scoop out peanut butter;
Apply peanut butter to one slice of bread;
Spread peanut butter on slice;
Place knife on plate;
Close peanut butter jar;
Open jelly bottle;
Squeeze jelly onto second bread slice;
Close jelly bottle;
Place down jelly;
Pick up knife;
Spread jelly on slice;
Bring two slices of bread together;
Cut slices in half down the middle;
Throw knife in the trash;
Pick up one half of sandwich;
Enjoy;
END.
F. Was denken wir?
A. Die Abfolge dieses Beispiels ist sehr gründlich! Allerdings gehen wir unter bestimmten Voraussetzungen immer noch davon aus, dass unsere Utensilien bzw. Zutaten bereits vorhanden sind. Was ist, wenn wir keine Teller mehr haben? Nehmen wir stattdessen eine Serviette, um unser Sandwich darauf zu legen? Was ist, wenn wir kein Gelee mehr haben? Werfen Sie das Sandwich weg oder essen Sie es nur mit Erdnussbutter?
Computer sind nicht schlau. Wir müssen ihnen Schritt-für-Schritt-Anleitungen geben, um den Bedingungen Rechnung zu tragen. Sie können sich nicht anpassen, um Änderungen vorzunehmen, ohne dass ihnen dies ausdrücklich mitgeteilt wird. Beim Programmieren handelt es sich um eine Reihe von Aufgaben, die nur dann erledigt werden können, wenn eine bestimmte Anzahl von Bedingungen erfüllt ist.
Computer können sich nicht anpassen, aber wir können es. Ihr erster Versuch mit Pseudocode wird wahrscheinlich nicht alles abdecken. Sobald Sie mehr wissen, können Sie Ihren Pseudocode aktualisieren und umgestalten.
Beim Pseudocode geht es nicht nur darum, die Schritte aufzuschreiben, die Sie bereits kennen. Es ist ein Werkzeug, das Ihnen hilft, das Problem zu lösen. Bevor wir Pseudocode zur Lösung des Problems schreiben können, müssen wir das Problem kennen.
Hier sind einige Schritte, die bei der Problemlösung helfen können:
Abschließend ergreifen wir Maßnahmen. Dies ist der Zeitpunkt, an dem wir endlich mit dem Schreiben von Code beginnen. Wir kämpfen hart dafür, kleine Schritte zu unternehmen und überprüfen, ob jeder Schritt das erreicht, was wir wollen und was wir erwarten, bevor wir fortfahren. Wenn wir zu viel auf einmal tun und Dinge kaputt gehen, was immer der Fall ist, wissen wir nicht, was das Problem verursacht. Wir werden nicht wissen, welchem Teil wir vertrauen sollen. Menschen leben von einfachen Siegen. Wir müssen Fortschritte sehen. Denken Sie daran. Benutze das. Feiern Sie Ihre Siege.
F. Wo passt Pseudocode in diese Schritte?
A. Teilen Sie es auf ODER fangen Sie klein an
Dieser Prozess ist iterativ. Wir kreisen weiter und wiederholen die vorherigen Schritte, nur auf einer anderen Ebene.
Wenn wir uns einem Problem zum ersten Mal nähern, sehen wir das große Ganze. „Break it down“ bringt uns große Fortschritte. Dann unternehmen wir einen dieser Schritte und „brechen es auf“. Jetzt beginnen wir klein und schreiben Pseudocode, um das Problem zu veranschaulichen.
Pseudokodierung beweist, dass wir das Problem identifiziert , konzeptionell verstanden und in kleine Schritte zerlegt haben, denen wir folgen können.
Es gibt keine feste Syntax für Pseudocode. Es muss nur klar, einfach und prägnant sein.
Wenn Sie nicht weiterkommen, können Sie gerne diese Syntax verwenden:
Referenzierung: Einführung in Pseudocode
Allgemeine Struktur des Pseudocodes
PROGRAM <ProgramName>:
<Do Stuff>
END.
Auswahl: IF/ELSE-Anweisungen
IF (<Condition>)
THEN <Statements>;
ELSE <Statements>;
ENDIF;
Iteration: LOOP
WHILE (<Condition>)
ENDWHILE;
Befolgen Sie die Anweisungen in starter_code/pseudo_code_practice.md