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

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...