128 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a
FmtStr$-Funktion
Formatiert einen numerischen Ausdruck.
Syntax
FmtStr$ (numeric expression, strFormat)
Parameter
numeric expression Zu formatierender numerischer Ausdruck.
strFormat Formatspezifizierungs-Zeichenkette.
Rückgabewerte
Eine Zeichenkette, die den formatierten Ausdruck enthält.
Beschreibung
FmtStr$ wird verwendet, um einen numerischen Ausdruck in eine Zeichenkette umzuwandeln.
Spezifikationssymbole für das numerische Format Formatiert einen numerischen Ausdruck.
Zeichen Beschreibung
Keine Anzeige der Zahl ohne Formatierung.
(0) Zahlzeichen-Platzhalter. Anzeige eines Zahlzeichens oder einer Null. Wenn an der Stelle des Ausdrucks ein Zahlzeichen steht, an der in der Formatzeichenkette eine Null (0) erscheint, wird es angezeigt. Sonst wird an dieser Stelle eine Null angezeigt. Wenn eine Zahl weniger Zahlzeichen hat (egal auf welcher Seite der Dezimalen), als der
Formatausdruck Nullen aufweist, werden die vorangehenden oder die anhängenden Nullen angezeigt. Wenn die Zahl mehr Zahlzeichen zur Rechten der Dezimaltrennung hat, als Nullen zur rechten Seite der Dezimaltrennung im Formatausdruck vorhanden sind, wird diese Zahl auf so viele Dezimalstellen gerundet, wie Nullen vorhanden sind.
Wenn die Zahl mehr Zahlzeichen zur Linken der Dezimaltrennung hat, als Nullen zur linken Seite der Dezimaltrennung im Formatausdruck vorhanden sind, werden die überzähligen Zahlzeichen ohne Änderung angezeigt.
(#) Zahlzeichen-Platzhalter. Zeigt ein Zahlzeichen oder gar nichts an. Wenn an der Stelle des Ausdrucks ein Zahlzeichen steht, an der in der Formatzeichenkette ein #-Zeichen erscheint, wird es angezeigt. Sonst wird an dieser Stelle nichts angezeigt. Dieses Symbol funktioniert wie der 0 Zahlzeichen-Platzhalter, mit der Ausnahme, dass die vorangehenden und die anhängenden Nullen nicht angezeigt werden, wenn die Zahl ebenso viele oder weniger Zahlzeichen als #-Zeichen auf beiden Seiten der
Dezimaltrennung im Formatausdruck enthält.
(.) Dezimaler Platzhalter. In einigen Darstellungen wird ein Komma zur Tennung von Dezimalstellen verwendet. Der dezimale Platzhalter bestimmt, wie viele Zahlzeichen zur Linken und Rechten der Dezimalstellen-Trennung angezeigt werden. Wenn der
Formatausdruck ausschließlich Nummernzeichen zur Linken dieses Symbols beinhaltet, beginnen Zahlen kleiner als 1 mit einer Dezimalstellen-Trennung. Um eine vorangehende Null mit Nachkommastellen anzuzeigen, verwenden Sie 0 als ersten
Zahlzeichen-Platzhalter zur Linken der Dezimalstellen-Trennung. Das Zeichen, das tatsächlich als dezimaler Platzhalter in den formatierten Ausgabedaten verwendet wird, hängt von dem Zahlen-Format ab, das Ihr System erkennt.
(,) Tausendertrennzeichen. In einigen Darstellungen wird ein Punkt als
Tausendertrennzeichen verwendet. Das Tausendertrennzeichen trennt Tausender von Hundertern innerhalb einer Zahl, die vier oder mehr Stellen zur Linken der
Dezimalstellen-Trennung besitzt. Die standardmäßige Verwendung des
Tausendertrennzeichens wird definiert, wenn das Format ein Tausendertrennzeichen enthält, das von Zahlzeichen-Platzhaltern umgeben ist (0 oder #). Zwei nebeneinander stehende Tausendertrennzeichen oder ein Tausendertrennzeichen direkt zur Linken der
F
FmtStr$-Funktion
Dezimalstellen-Trennung (je nachdem, ob eine Dezimalstelle definiert ist, oder nicht) bedeutet eine "Skalierung der Zahl, indem man sie durch 1000 teilt und rundet, falls nötig." Beispielsweise können Sie die Format-Zeichenkette “##0,,” verwenden, um 100 Millionen als 100 darzustellen. Zahlen, die kleiner als eine Million sind, werden als 0 angezeigt. Zwei nebeneinanderstehende Tausendertrennzeichen in einer anderen Position als direkt zur Linken der Dezimallstellen-Trennung stellen eine Spezifizierung der Nutzung eines Tausendertrennzeichens dar. Das Zeichen, das tatsächlich als Tausendertrennzeichen in den formatierten Ausgabedaten verwendet wird, hängt von dem Zahlen-Format ab, das Ihr System erkennt.
Verwandte Befehle Left$, Right$, Str$
Beispiel einer FmtStr$-Funktion
Function SendDateCode
String d$, f$
f$ = FmtStr$(10, "000.00") OpenCom #1
Print #1, f$
CloseCom #1 Fend
For...Next
130 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a
For...Next
Die Befehle For...Next werden zusammen verwendet, um eine Schleife herzustellen, in der Befehle, die sich zwischen den Befehlen For und Next befinden, mehrfach ausgeführt werden, wie vom Benutzer angegeben.
var Die Zählvariable, die mit der For...Next^-Schleife verwendet wird. Diese Variable wird normalerweise als Integer definiert, kann jedoch auch als Realvariable definiert werden.
initValue Der Anfangswert für den Zähler var.
finalValue Der Endwert des Zählers var. Sobald dieser Wert erreicht ist, ist die For...Next Schleife vollständig und die Ausführung wird mit der Anweisung, die auf den Next-Befehl folgt, fortgesetzt.
increment Ein optionaler Parameter, der das Zähl-Inkrement für jede Ausführung der Next-Anweisung innerhalb der For...Next Schleife definiert. Diese Variable kann positiv oder negativ sein. Wenn der Wert negativ ist, muss der Erstwert der Variable größer sein als ihr Endwert. Wird der Inkrement-Wert weggelassen, inkrementiert (erhöht) das System automatisch um 1.
statements Jede gültige SPEL+-Anweisung kann in die For...Next-Schleife eingefügt werden.
Beschreibung
For...Next führt einen Satz von Anweisungen innerhalb einer Schleife mit einer definierten Häufigkeit aus. Die For-Anweisung stellt den Anfang der Schleife dar. Die Next-Anweisung ist das Ende der Schleife. Wie oft die Anweisungen innerhalb der Schleife ausgeführt werden, wird mithilfe einer Variablen gezählt.
Der erste numerische Ausdruck (initValue) ist der Erstwert des Zählers. Dieser Wert kann positiv oder negativ sein, solange die Variable finalValue und die Step-Inkrementierung einander korrekt
entsprechen.
Der zweite numerische Ausdruck (finalValue ) ist der Endwert des Zählers. Dies ist der Wert der, sobald er erreicht ist, die Beendigung der For...Next-Schleife auslöst. Die Steuerung des Programms wird an den nächsten auf den Next-Befehl folgenden Befehl weitergegeben.
Programmanweisungen, die auf die For-Anweisung folgen, werden ausgeführt, bis ein Next-Befehl erreicht wird. Die Zählervariable (var) wird dann durch den Step-Wert inkrementiert, der durch den Parameter increment definiert ist. Wird die Step-Option nicht genutzt, wird der Zähler um 1 (eins) inkrementiert.
Die Zählervariable (var) wird dann mit dem Endwert verglichen. Wenn der Zählerstand kleiner oder gleich dem Endwert ist, werden die Anweisungen, die dem For-Befehl folgen, erneut ausgeführt.
Wenn die Zählervariable größer als der Endwert ist, wird die Ausführung außerhalb der For...Next-Schleife verzweigt und mit dem Befehl fortgefahren, der direkt auf den Next-Befehl folgt.
S
For...Next
Hinweise
Negative Step-Werte:
Wenn der Wert der Step-Inkrementierung (increment) negativ ist, wird die Zählervariable (var) bei jedem Durchlauf durch die Schleife dekrementiert (verringert) und der Erstwert muss größer sein als der Endwert, damit die Schleife funktioniert.
Eine Variable, die auf Next folgt, wird nicht benötigt:
Der Variablenname, der auf den Next-Befehl folgt, kann weggelassen werden. Für Programme, die verschachtelte For...Next-Schleifen beinhalten, wird jedoch empfohlen, den Variablennamen, der auf den Next-Befehl folgt, mit einzubeziehen, damit die Schleifen schnell identifiziert werden können.
Verwandte Befehle Do...Loop
Beispiel für For...Next
Function fornext Integer counter
For counter = 1 to 10 Go Pctr
Next counter
For counter = 10 to 1 Step -1 Go Pctr
Next counter Fend
Function...Fend
132 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a
Function...Fend
Eine Funktion ist eine Gruppe von Programmanweisungen, die eine Function-Anweisung als erste und eine Fend-Anweisung als letzte Anweisung beinhaltet.
Syntax
Function funcName [(argList)] [As type]
statements Fend
Parameter
funcName Name, der einer spezifischen Gruppe von Anweisungen gegeben wird, die zwischen die Befehle Function und Fend eingebunden werden. Der
Funktionsname muss alphanumerische Zeichen enthalten und darf bis zu 32 Zeichen lang sein. Unterstriche sind ebenfalls zulässig.
argList Optional. Liste von Variablen, die für Argumente stehen, die an die
Funktionsprozedur weitergegeben werden, wenn diese aufgerufen wird. Multiple Variablen werden durch Kommata getrennt.
Das arglist-Argument hat die folgende Syntax:
[ {ByRef | ByVal} ] varName [( )] As type
ByRef Optional. Spezifizieren Sie ByRef, um Veränderungen im Variablenwert von der Calling-Funktion sehen zu können.
ByVal Optional. Spezifizieren Sie ByVal, damit Veränderungen im Variablenwert von der Calling-Funktion nicht gesehen werden können. Dies ist die
Vorgabeeinstellung.
varName Erforderlich. Name der Variablen, die für das Argument steht; folgt den Standardkonventionen für die Variablenbenennung.
As type Erforderlich. Der Argumenttyp muss definiert werden.
Rückgabewerte
Wert, dessen Datentyp mit dem As-Ausdruck am Ende der Funktionsdeklaration definiert wird.
Beschreibung
Die Function-Anweisung zeigt den Beginn einer Gruppe von SPEL+-Anweisungen an. Um anzuzeigen, wo eine Funktion endet, wird die Fend-Anweisung verwendet. Alle Anweisungen zwischen Function und Fend werden als Teile der Funktion betrachtet.
Die durch Function...Fend definierte Kombination von Anweisungen kann als ‚Behältnis’ betrachtet werden, in dem alle Anweisungen, die sich zwischen den Anweisungen Function und Fend befinden, zu der Funktion gehören. Eine Programmdatei kann multiple Funktionen beinhalten.
Verwandte Befehle
Call, Fend, Halt, Quit, Return, Xqt
S
Function...Fend
Beispiel für Function...Fend
Das folgende Beispiel zeigt drei Funktionen innerhalb einer Datei. Die Funktionen mit den Namen task2 und task3 werden als Hintergrundtasks (Background Tasks) ausgeführt, während der Haupttask mit Namen Main im Vordergrund ausgeführt wird.
Function main
Xqt 2, task2 'Führt task2 im Hintergrund aus Xqt 3, task3 'Führt task3 im Hintergrund aus '... weitere Anweisungen
Fend
Function task2 Do
On 1 On 2 Off 1 Off 2 Loop Fend
Function task2 Do
On 10 Wait 1 Off 10 Loop Fend