Variablen, Ein- und Ausgabe

BASIC-Programme speichern Zahlen und Text in Variablen; die klassischen BASIC-Interpreter verwenden für jede Variable einen einfachen Buchstaben (A, B usw.). Wenn die Variable Text enthalten soll, ist sie eine String-Variable und erhält am Ende ein Dollarzeichen als Kennzeichnung (A$, B$ usw.).

Mit Variablen können Sie rechnen, z. B. gibt das Programm

10 A = 10
20 B = 20
30 C = A + B
40 PRINT "SUMME "; C

die Summe 30 aus. Der PRINT-Befehl akzeptiert mehrere Argumente, die durch ein Semikolon getrennt werden – es erscheint dann alles in einer Zeile. Soll das Programm über die Tastatur eine Eingabe einlesen, benutzen Sie den Befehl INPUT:

10 PRINT "DEIN NAME: "
20 INPUT A$
30 PRINT "DEIN ALTER: "
40 INPUT B
50 PRINT "NAME: "; A$; " - ALTER: "; B

Unterprogramme

Wollen Sie eine Subroutine (ein Unterprogramm) aufrufen, können Sie den Befehl GOSUB verwenden. Das folgende Beispiel zeigt, wie Sie eine einfache Additionsfunktion schreiben können:

100 A=10 : B=20 : GOSUB 200
110 PRINT A; "+"; B; "="; C
120 PRINT "GIB A EIN: "; : INPUT A
130 PRINT "GIB B EIN: "; : INPUT B
140 GOSUB 200
150 PRINT A; "+"; B; "="; C
160 END
200 REM ADDIERER
210 C = A + B
220 RETURN

Der Doppelpunkt, der hier mehrfach auftaucht, ist ein Befehlstrenner: Damit können Sie mehrere Befehle in eine einzelne Zeile packen. Über den Befehl END in Zeile 160 wird das Programm beendet – wenn dieser Befehl fehlt, setzt der Interpreter die Ausführung in der folgenden Zeile fort. Das ist hier aber nicht gewünscht, denn in Zeile 200 beginnt das Unterprogramm, das die Summe berechnet: Es soll nur über GOSUB angesprungen werden.

Eine echte Parameterübergabe (wie in modernen Programmiersprachen) ist nicht möglich, Sie können diese nur simulieren, indem Sie Variablen vor dem Aufruf des Unterprogramms mit passenden Werten füllen und in der Subroutine darauf zugreifen. Für die Rückgabe des berechneten Ergebnisses wählen Sie denselben Weg. Im Beispielprogramm sind A und B die Parameter, und C ist der Rückgabewert. In modernen BASIC-Dialekten würde das Programm stattdessen wie folgt aussehen:

A=10 : B=20 : C = add (A, B)
PRINT A; "+"; B; "="; C
PRINT "GIB A EIN: "; : INPUT A
PRINT "GIB B EIN: "; : INPUT B
C = add (A, B)
PRINT A; "+"; B; "="; C
REM ADDIERER
FUNCTION add (x,y)
  RETURN x+y
END FUNCTION

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

EL 05-07/2017: Emulatoren und virtuelle Maschinen

Digitale Ausgabe: Preis € 9,80
(inkl. 19% MwSt.)

EasyLinux erscheint vierteljährlich und kostet 9,80 Euro. Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 33,30 Euro. Details dazu finden Sie im Computec-Shop.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!      

Aktuelle Fragen

HP PHOTOSMART 5525 nimmt die schwarze original patrone nicht
Erich Mecl, 28.06.2017 18:10, 0 Antworten
Hallo Leute! Mein HP Photosmart 5525 Drucker erkennt die original schwarze Patrone 364, nimmt s...
Irgend ein Notebook mit Linux Mint - vllt der Dell Latitude 3480???
Universit Freiburg, 26.06.2017 13:51, 3 Antworten
Hey Leute, bin am Verzweifeln weil ich super gerne auf Linux umsteigen würde aber kein Noteboo...
scannen mit LINUXMINT 18.0 - Brother DCP - 195 C
Christoph-J. Walter, 21.06.2017 08:47, 5 Antworten
Seit LM 18.0 kann ich nicht mehr direkt scannen. Obwohl ich die notwendigen Tools von der Brothe...
Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 4 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...