EINFÜHRUNG
erscheint keine Anzeige und das Programm läuft weiter, um die Namen
in aufsteigender ASCEt-Folge (Zeilen 70 bis 110) zu sortieren. Es gibt
viele bekannte Verfahren zur Datensortierung. Das vorliegende Verfah
ren ist jedoch eines der einfachsten. Bei diesem Verfahren wird die Liste
durchgegangen und eine Reihe von benachbarten Einträge werden mit
einander verglichen, und wo erforderlich erfolgt ein Datenaustausch. In
Zeile 110 prüft das Programm die Variable TAUSCH$ auf „Y" für Ja oder
auf „N" für nein, um zu sehen, ob ein Datenaustausch beim gerade erfolg
ten Durchgang der Liste erforderlich war. War dies der Fall, wird die
Liste noch einmal durchlaufen. Nach einem Leer-Durchlauf, bei dem
sich ein Datenaustausch erübrigt, läuft das GW-BASIC Programm wei
ter, um die Liste in der neuen Reihenfolge auszudrucken.
Beachten Sie jedoch, daß der Sortiervorgang den gesamten ASCII-Code
berücksichtigt und sich nicht nur auf Buchstaben beschränkt. Das Pro
gramm hindert Sie nicht daran, nicht-alphabetische Zeichen einzugeben.
Darüber hinaus können Sie bestimmen, ob Groß- oder Kleinbuchstaben
verwendet werden sollen. Sie könnten z.B. den „Namen" "Iseltsam" ein
geben. Der Sortiervorgang würde dann dieses Wort näher an den Anfang
der Liste setzen wie jeden anderen Namen, der mit einem Buchstaben
beginnt, weü der ASCü-Wert für das Ausrufezeichen 57 beträgt und der
niedrigste Code, der mit einem Buchstaben belegt ist, 65 (großes A) ist.
Der tatsächliche Datenaustausch erfolgt in einem „Unterprogramm" in
Zeile 180. Dieses Unterprogramm wird mit dem GOSUB-Befehl in Zeüe
90 (falls die Bedingung zum Datenaustausch erfüllt ist) eingegeben. Der
RETURN-Befehl fordert GW-BASIC auf, zu den Befehl zurückzukehren,
der unmittelbar auf dem folgte, der GW-BASIC in das Unterprogramm
schickte, In unserem Fall nach Zeile 100. Hier wäre es möglich gewesen,
einen Befehl GOTO 180 zu benutzen, um den Namen des Unterpro
gramms für den Datenaustausch und den Befehl GOTO 100 eingeben zu
können, damit GW-BASIC wieder zurückfinden kann. Der Unterschied
zwischen den beiden Methoden liegt darin, daß der RETURN-Befehl
(kann nur zusammen mit GOSUB verwendet werden) GW-BASIC wie
der an den richtigen Ort zurückbringt, ohne eine Zeüennummer nennen
zu müssen. Dies ist eine sehr zweckmäßig in solchenb Programmen, bei
denen ein Unterprogramm an verschiedenen Stellen eingegeben werden
kann.
Der größere Teil der „Tausch"-Routine" ist damit beschäftigt, die
Namenpaare, die ausgetauscht werden am Büdschirm auszugeben. Die
Programmschleife in Zeile 200 stellt für den Programmablauf eine Ver
zögerung dar, denn das Programm muß diese Schleife 600mal durchlau
fen, bevor es zurückkehren (RETURN) kann, um das nächste Namen
paar vergleichen zu können. Die Schleife selbst enthält keinerlei
1-36
GW-BASIC