- TI-BASIC
-
TI-Basic ist der inoffizielle Name einer , mit der der amerikanischen Firma (TI) arbeiten. Sie unterscheidet sich etwas von der verbreiteten Programmiersprache . Besonders für die neueren Modelle von Texas Instruments, wie den bzw. den , den , den , den bzw. oder den gibt es heute eine Vielzahl von Programmen.
Inhaltsverzeichnis
Allgemeines
Programme und Funktionen
Mit TI-Basic können sowohl als auch erstellt werden. Der Unterschied besteht darin, dass Funktionen im Gegensatz zu Programmen mithilfe des Befehls
return
Werte zurückgeben können, sämtliche anderen Ein- und Ausgabebefehle (Input, Output, PxlOn etc.) sind allerdings nur in Programmen anwendbar. Des Weiteren ist es einer Funktion nicht möglich Variablen dauerhaft abzuspeichern, sondern nur temporär, solange die Funktion ausgeführt wird.Variablen
Im Vergleich zu vielen anderen Programmiersprachen ist die Zahl der möglichen stark limitiert. Es ist nur möglich Namen zu verwenden, die acht oder weniger Buchstaben haben und nicht den gleichen Namen wie eine Systemvariable (zum Beispiel y1) haben. Die Zuweisung eines Wertes zu einer Variablen erfolgt meistens über den Operator „→“. (Syntax: Wert→Variable)
Programmierung
Neben der direkten Eingabe am TI können die Programme auch extern am Computer bearbeitet und anschließend via Datenkabel an den TI übertragen werden.
Bedingungen (alle oben genannten Rechner)
- If-Anweisung:
:If Bedingung : Disp "Bedingung erfüllt" :Disp "Diese Anweisung wird in jedem Fall ausgeführt"
- If...then...EndIf-Anweisungen:
:If Bedingung then : Disp "Diese Anweisungen werden" : Disp "alle nur dann ausgeführt," : Disp "wenn die Bedingung erfüllt ist" :EndIf :Disp "Diese Anweisung wird in jedem Fall ausgeführt"
- If...then...else...EndIf-Anweisungen:
:If Bedingung then : (mehrere Anweisungen) :else : (mehrere Anweisungen, die nur ausgeführt werden, wenn die bedingung nicht erfüllt ist) :EndIf
Schleifen
Alle oben genannten Rechner
TI-Basic beherrscht folgende Arten von Schleifen: die mit Zählvariable und die , die ausgeführt wird, solange Bedingung wahr ist. Darüber hinaus lassen sich Schleifen mittels realisieren.
Schleifenart Verwendung Beispiel For :For Variable,Anfang,Ende[,Schrittweite]
:Befehle
:End:For I,0,10,2
:Disp I
:EndWhile :While Ausdruck
:Befehle, solange Bedingung wahr ist
:End:While I<5
:I+1→I
:EndLabel :Lbl Labelname
:Befehle
:Goto Labelname:Lbl A
:I+1→I
:Goto ATI Voyage 200
Bei dem TI Voyage 200 steht noch
Loop
undEndLoop
als Endlosschleife zur Verfügung. Man kann sie - wieWhile
undEndWhile
undFor
undEndFor
- mit dem BefehlExit
abbrechen.Schleifenart Verwendung Beispiel Loop :Loop
: Block
:EndLoop:0→I
:Loop
:I+1→I
:Disp I
:If I=10
:Exit
:EndLoopTI-83 Plus; TI-83 Plus SE; TI-84 Plus
Variablen
Bei diesen Rechnern können folgende Variablen verwendet werden:
Repeat-Schleife
Eine weitere Schleifenart lässt sich nur auf diesen Rechnern verwenden:
Repeat :Repeat Ausdruck
:Befehle, bis Bedingung wahr ist
:End:Repeat I<5
:I-1→I
:EndIS>; DS< und Menu
Diese Anweisungen sind auf den neueren Rechnern ebenfalls nicht mehr verfügbar.
Art der Verzweigung Verwendung Beispiel Increase-Step :IS>(Variable, Wert)
:Befehl, wenn Wert ≥ Variable:IS>(A,3)
:Disp ADecrease-Step :DS<(Variable, Wert)
:Befehl, wenn Wert ≤ Variable:DS<(A,3)
:Disp AMenu :Menu("Bezeichnung", "Text 1", Label 1,
"Text 2", Label 2,…):Menu("OPTIONEN", "STARTEN",
A, "BEENDEN", B)Neuere Rechner (TI-89 bis Voyage 200)
Variablen
Auf neueren Rechnern dürfen Variablen maximal acht Zeichen lang sein, es können auch Umlaute, griechische Buchstaben und diakritische Zeichen (im Gegensatz zu einigen anderen Programmiersprachen, etwa ) verwendet werden. „StorePic“ und „StoreGDB“ wurden durch „StoPic“ und „StoGDB“ ersetzt.
Menüs, Dialoge und Symbolleiste
Außer durch die Eingabeaufforderungen Input und InputStr kann die Benutzerschnittstelle folgendermaßen realisiert werden:
- mit Dialog-Blöcken
- mit Popup-Menüs
- mithilfe der Symbolleiste (Toolbar oder Custom)
Dialog
Ein Beispiel für einen Dialog:
:Dialog : Title "Hallo" : Text "xyz" : Dropdown "Bitte auswählen",{"Eins","Zwei","Drei"},var1 : Request "Ihr Name?",var2 :EndDlog
Dieses Beispiel erzeugt einen Dialog mit dem Titel "Hallo". Im eigentlichen Fenster steht der Text "xyz", darunter kann man zwischen "Eins", "Zwei" und "Drei" auswählen, und ganz unten steht ein Eingabefeld, wo der Benutzer nach seinem Namen gefragt wird.
Rechts ist auch in Screenshot abgebildet, in dem dieses Beispielprogramm gezeigt wird.
PopUp
Ein Beispiel für ein PopUp-Fenster:
:PopUp {"1999","2001","2002","2005"},var3
Das Ergebnis, also die Auswahl, wird in der Variable "var3" gespeichert. Bei zum Beispiel "2001" wäre der Inhalt von var3 die Zahl 2.
Rechts ist auch der Screenshot zu diesem Programm, nur der
Disp
-Befehl ist hinzugefügt worden.Toolbar
Ein Beispiel für eine Toolbar-Leiste:
:Toolbar :Title "Quiz starten",start :Title "Optionen" : Item "Einstellungen",options : Item "Über dieses Quiz",about :Title "Beenden",quit :EndTBar
Sollte man (hier in diesem Beispiel) F1 (Quiz starten) auswählen, springt das Programm zum angegebenen Label "start". Möchte man unter einem Titel mehr auflisten (wie in F2), darf hinter dem
Title
-Befehl kein Label angegeben werden. Unter dem Title-Befehl müssen allerdings in solch einem FallItem
s mit Labeln vorhanden sein.Rechts ist auch ein Screenshot, der die Toolbar zeigt. Nur ein
Output
-Befehl ist wieder ergänzt worden.TI nSpire und TI nSpire CAS
In der ersten Version des Betriebssystems der Rechner und TI nSpire CAS können mit TI-Basic nur , aber keine erstellt werden.
:ClrIO Löscht alle Zeichen auf dem Display :Disp "HALLO WELT" Zeigt danach "Hallo Welt"
Oder:
:ClrIO Löscht alle Zeichen auf dem Display :Output(1,1,"HALLO WELT") Zeigt in der erstern Zeile in der ersten Spalte "Hallo Welt" an
Leistungsfähigkeit
Im Vergleich zu dem 68k-, der in die Rechner integriert ist, sind TI-Basic-Programme sehr langsam. Besonders Ausgabebefehle verlangsamen die Ausführung, und auf Grund des geringen -Speichers sind wie die nur bedingt oder überhaupt nicht realisierbar, weder mit TI-Basic noch mit Assembler.
Weblinks
Wikimedia Foundation.