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
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

title_2015_01

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

EasyLinux erscheint vierteljährlich und kostet EUR 9,80. Weitere Informationen zum Heft finden Sie auf der EasyLinux-Homepage.

Das EasyLinux-Jahresabo mit Prämie kostet ab EUR 33,30. Details zum EasyLinux-Jahresabo finden Sie im Medialinx-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

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

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 2 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Rootpasswort
Jutta Naumann, 29.01.2015 09:14, 1 Antworten
Ich habe OpenSuse 13.2 installiert und leider nur das Systempasswort eingerichtet. Um Änderungen,...
Neue SuSE-Literatur
Roland Welcker, 14.01.2015 14:10, 1 Antworten
Verehrte Linux-Freunde, seit Hans-Georg Essers Buch "LINUX" und Stefanie Teufels "Jetzt lerne ich...
DVD abspielen unter openSUSE 13.1
Michael Pfaffe, 12.01.2015 11:48, 6 Antworten
Hallo Linuxer, Bisher habe ich meine DVD´s mit linDVD unter openSUSE abgespielt. Mit der Versi...
Kontrollleiste SuSE 12.3 gestalten
Roland Welcker, 31.12.2014 14:06, 1 Antworten
Wie bekomme ich das Icon eines beliebigen Programms (aktuell DUDEN) in die Kontrollleiste und kan...
flash-player
roland reiner, 27.12.2014 15:24, 7 Antworten
Mein Flashplayer funktioniert nicht mehr-Plug in wird nicht mehr unterstütz,auch über google chro...