BASIC-Tutorial (Vorwort, Installation, Kapitel 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)

Eingabe und Ausgabe

1.1. Texte am Bildschirm ausgeben, Drucken, Bildschirm löschen

Um dem Benutzer zu zeigen, was das Programm gerade macht, ist die Ausgabe wichtig. Der Benutzer soll allerdings nicht nur über die Vorgänge informiert werden, die gerade ablaufen, sondern er soll auch dazu aufgefordert werden, Eingaben zu tätigen. Beispielsweise fordert ihn eine Meldung am Bildschirm dazu auf, seinen Namen einzugeben. Ein anderer Anwendungszweck wäre beispielsweise ein Programm, das Dateien löscht. Dieses zeigt dem Benutzer laufend an, welche Datei gerade gelöscht wird. (Voraussetzung: Der Benutzer hat mehrere Dateien zum Löschen "freigegeben".) Das letzte Beispiel hat einfach nur Informationscharakter, denn dieses Programm funktioniert auch ohne Bildschirmausgabe. Das erste Beispiel jedoch höchstwahrscheinlich nicht. Würde das Programm dem Benutzer nicht sagen, was er eingeben soll, würde dieser entweder etwas Unpassendes eingeben oder - im schlimmsten Fall - das Programm beenden.

Um wieder zur Bildschirmausgabe zurückzukommen. Der wichtigste Befehl, den Sie diesbezüglich kennen lernen werden, ist PRINT. PRINT gibt einen Text auf den Bildschirm aus, LPRINT hingegen schickt einen Text an den Drucker. Daher bietet LPRINT die Möglichkeit, etwas auszudrucken.

PRINT im einfachsten Fall:

PRINT "Text"

Beachten Sie, dass der Text, der ausgegeben werden soll, unter Anführungzeichen stehen muss. Würde man die Anführungszeichen weglassen, so nimmt der Compiler (Interpreter) an, dass man den Inhalt einer Variablen ausgeben will. Mehr dazu später.

Die gleiche Syntax (Grammatik) gilt für LPRINT, um Texte an den Drucker zu schicken:

LPRINT "Text"

Wissen Sie eigentlich, wofür die Abkürzung BASIC steht? Nein? Das nächste Beispiel verrät's ...

CLS
PRINT "Die Abkuerzung BASIC steht fuer: (B)eginners (A)ll Purpose (S)ymbolic (I)nstruction (C)ode"
PRINT "Taste druecken um das Programm zu beenden..."

CLS löscht den Bildschirminhalt. Der Aufruf von CLS ist einfach:

CLS

Haben Sie eigentlich schon mal versucht, mehrere Anweisungen in eine Zeile zu schreiben? Versuchen Sie es einmal und starten Sie das Programm. QBasic (oder FreeBASIC) "bedankt" sich mit einer Fehlermeldung, denn es darf immer nur eine Anweisung in einer Zeile stehen. Doch man kann sich Abhilfe schaffen, indem man an das Ende der einen Zeile einen Doppelpunkt anhängt. Gleich nach dem Doppelpunkt kann die nächste Anweisung folgen - in der selben Zeile! Soll eine weitere Anweisung folgen, muss diese entweder in die nächste Zeile geschrieben werden, oder nach der vorigen Anweisung muss wieder ein Doppelpunkt folgen. Das Ganze noch einmal schön dargestellt:

Anweisung1: Anweisung2: Anweisung3 ...

Anstelle von AnweisungX (X steht für die entsprechende Zahl in der oberen Darstellung) soll natürlich irgendeine - sinnvolle - Anweisung eingesetzt werden.

Einen kleinen Tipp habe ich noch für alle Tippfaulen: Anstelle von PRINT kann auch nur ein Fragezeichen (?) verwendet werden!

? "Text"

1.2. Texte von der Tastatur einlesen

Es wird Zeit, Daten von der Tastatur entgegenzunehmen, die der Benutzer eingibt. Zuvor stellt sich jedoch die Frage: Wohin mit den eingegebenen Daten? Auf der Festplatte abspeichern wäre eine Idee, doch eine einzelne Zahl, ein Wort oder Ähnliches abzuspeichern wäre Speicherplatzverschwendung. Außerdem wäre es umständlich und momentan zu schwierig. Mit dem Lesen und Speichern von Dateien beschäftigen wir uns erst in Kapitel 11. Um es nicht allzu spannend zu machen: Wir werden die Daten im RAM - dem Arbeitsspeicher (Abk. für random access memory, Speicher mit wahlfreiem Zugriff) - ablegen.

Bevor etwas gespeichert werden kann, muss erst festgelegt werden, wieviel (Datenmenge) und von welchem Typ die abgelegten Daten sein sollen. Typen wären beispielsweise Ganzzahlen-, Fließkommazahlen- oder String-Typen. String bezeichnet eine Zeichenkette, also eine Folge von Zeichen wie etwa ein Wort oder einen ganzen Satz.

Im Zusammenhang mit der Dateneingabe werden Sie zwei Befehle kennen lernen: INPUT und LINE INPUT. Will man Strings einlesen, benötigt man LINE INPUT, anderenfalls muss INPUT verwendet werden. Verwenden Sie INPUT, zeigt QBasic an der Stelle, an der eine Texteingabe erwartet wird, ein Fragezeichen an. Nützen Sie INPUT wie unten gezeigt auch zur Textausgabe, wird das Fragezeichen nicht angezeigt! INPUT hat folgende Syntax:

INPUT "Evtl. Text, der z.B. zur Eingabe auffordert", Variable

Eine Variable reserviert einen gewissen Speicherplatz (Speicherbereich) im Arbeitsspeicher des Computers und gibt dem Bereich einen Namen. Im nachfolgenden Beispiel nennen wir die Variable Zahl. Über den Bezeichner Zahl können Sie auf die dort gespeicherten Daten/Informationen zugreifen. Am besten lässt sich dies anhand eines Beispiels zeigen:

CLS
PRINT "Dieses Beispielprogramm demonstriert die Verwendung von INPUT."
INPUT "Geben Sie eine Zahl ein: ", Zahl
PRINT "Die eingegebene Zahl war: ", Zahl

Zunächst wird der Bildschirminhalt mit CLS gelöscht und danach der Text Dieses Beispielprogramm demonstriert die Verwendung von INPUT. auf dem Bildschirm angezeigt. Nun folgt der interessante Teil des Beispielprogrammes. Den ersten "Teil" der Anweisung "Geben Sie eine Zahl ein", hätte man problemlos weglassen können. Gleiches wäre auch mit PRINT in einer eigenen Zeile zu realisieren gewesen. Das gleiche Ergebnis hat folgendes Beispiel:

CLS
PRINT "Dieses Beispielprogramm demonstriert die Verwendung von INPUT."
PRINT "Geben Sie eine Zahl ein: "
INPUT Zahl
PRINT "Die eingegebene Zahl war: ", Zahl

INPUT liest eine Zahl von der Tastatur ein und speichert sie in der Variable mit dem Namen Zahl. Sie könnten auch jeden anderen Namen für die Variable nehmen, sofern dabei einige Regeln beachtet werden. Wichtig ist, dass Sie nur eine Ganzzahl oder eine Fließkommazahl eingeben. Geben Sie stattdessen irgendeine Zeichenkette ein (selbst ein Buchstabe wäre ausreichend!), so wird in der Variable 0 abgespeichert (bzw. nichts wird abgespeichert). Nach der Eingabe wird PRINT verwendet, um den Wert der Variable wieder auszugeben.

Aber auch die Eingabe von Zeichenketten (Strings) ist möglich. Probieren Sie das nächste Beispiel einfach aus.

CLS
LINE INPUT "Geben Sie einen String ein: ", Text$
PRINT "Der eingegebene String war: ", Text$

Zunächst einmal nützen wir LINE INPUT - wie oben bei INPUT beschrieben - gleich dazu, um den Text Geben Sie einen String ein: anzeigen zu lassen. Danach hat LINE INPUT die Aufgabe, einen String in die Variable Text$ einzulesen. Bei genauerem Hinsehen fällt das Dollarzeichen ($) auf, das dem Bezeichner angehängt wurde. Dieses gibt der Variable einen Typ (in dem Fall String). Das Dollarzeichen muss ebenso bei der Ausgabe angegeben werden.

Vorheriges Kapitel Nächstes Kapitel