Fallunterscheidung

Um verschiedene Situationen zu unterscheiden, kennt BASIC die Befehle IF (falls) und THEN (dann); in einigen Varianten der Sprache kommt noch das Schlüsselwort ELSE (anderenfalls) hinzu. Der folgende Programmcode liest z. B. mit INPUT eine Zahl ein und entscheidet dann, ob sie kleiner als 100 ist oder nicht:

10 PRINT "GIB WERT EIN: ";
20 INPUT X
30 IF X < 100 THEN PRINT "KLEINER ALS 100"
40 IF X >= 100 THEN PRINT "GROESSER ODER GLEICH 100"

Variablennamen wie X dürfen übrigens nicht beliebige Längen haben; für maximale Kompatibilität verwenden Sie nur Namen mit Länge 1 (also einzelne Buchstaben). Der C64 akzeptiert längere Namen, unterscheidet aber nur die ersten zwei Buchstaben: X und XY sind dort verschiedene Variablen, aber XY und XYZ sind es nicht. Beim Schneider CPC dürfen die Variablennamen bis zu 40 Zeichen lang sein.

Schleifen

Eine einfache Schleife haben Sie schon gesehen: Mit GOTO können Sie jederzeit zu einer früheren Stelle im Code zurück springen und so immer wieder dieselben Befehle ausführen. Beliebter ist aber die so genannte Zählschleife: Sie verwendet eine Variable, die nacheinander verschiedene Werte annimmt. Das folgende Beispiel gibt alle ungeraden Zahlen zwischen 1 und 9 aus:

10 FOR I = 1 TO 9 STEP 2
20 PRINT I,
30 NEXT I

Die Variable I erhält in Zeile 10 zunächst den Wert 1, dann wird dieser in Zeile 20 ausgegeben, und durch den Befehl NEXT I in Zeile 30 geht es zurück zum Anfang der Schleife. Normal würde eine FOR-Schleife nun den Wert um 1 erhöhen, aber durch das Schlüsselwort STEP addiert der Interpreter stattdessen immer 2 – der Wert von I im nächsten Durchlauf ist also 3, danach 5, 7 und schließlich 9. Wenn der Endwert erreicht ist, bricht die Schleife ab (Abbildung 6).

Abbildung 6: Mit einer FOR-Schleife wiederholen Sie gleichartige Berechnungen mit verschiedenen Werten.

Schleifen können Sie auch schachteln und wie folgt z. B. eine kleine Multiplikationstabelle (das kleine Einmaleins) ausgeben:

10 FOR I = 1 TO 10
20 FOR J = 1 TO 10
30 PRINT I; " x "; J; " = "; I*J
40 NEXT J
50 NEXT I

Beachten Sie, dass hier in Zeile 40 zunächst die "innere Schleife" beendet wird (FOR JNEXT J) und dann in Zeile 50 die "äußere Schleife" (FOR INEXT I).

Bei den meisten BASIC-Dialekten können Sie im NEXT-Befehl auch auf den Namen der Variable verzichten.

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

EL 03/2015: Distributionen im Test

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

Grammatikprüfung in LibreOffice nachrüsten
Grammatikprüfung in LibreOffice nachrüsten
Tim Schürmann, 24.04.2015 19:36, 2 Kommentare

LibreOffice kommt zwar mit einer deutschen Rechtschreibprüfung und einem guten Thesaurus, eine Grammatikprüfung fehlt jedoch. In ältere 32-Bit-Versionen ...

Aktuelle Fragen

Scanner EPSON Perfection V 300 photo und VueScan
Roland Welcker, 19.08.2015 09:04, 1 Antworten
Verehrte Linux-Freunde, ich habe VueScan in /usr/local/src/vuex_3295/VueScan installiert, dazu d...
Empfehlung gesucht Welche Dist als Wirt für VM ?
Roland Fischer, 31.07.2015 20:53, 2 Antworten
Wer kann mir Empfehlungen geben welche Distribution gut geeignet ist als Wirt für eine VM für Win...
Plugins bei OPERA - Linux Mint 17.1
Christoph-J. Walter, 23.07.2015 08:32, 3 Antworten
Beim Versuch Video-Sequenzen an zu schauen kommt die Meldung -Plug-ins und Shockwave abgestürzt-....
Wird Windows 10 update/upgrade mein Grub zerstören ?
daniel s, 22.07.2015 08:31, 8 Antworten
oder rührt Windows den Bootloader nicht an? das ist auch alles was Google mir nicht beantw...
Z FUER Y UND ANDERE EINGABEFEHLER AUF DER TASTATUR
heide marie voigt, 10.07.2015 13:53, 2 Antworten
BISHER konnte ich fehlerfrei schreiben ... nun ist einiges drucheinander geraten ... ich war bei...