NOISE - POKE Inhalt | SCREEN - TEXT HEIGHT


Kapitel 5-9
Der Befehlssatz

 POS  -  SAVE



 
POS 
Typ: Funktion
Syntax:  POS (<num.Ausdruck>)
Erklärung:  Ergibt die Spalte, in der sich der Cursor gerade befindet. Die Spaltenzählung beginnt bei 0. Der Parameter ist ohne Bedeutung, muß aber mit agegeben werden. 
Beispiel: PRINT "X"*10, POS(0)
Ergebnis:  XXXXXXXXXX    16
siehe auch:  CSRLIN   LOCATE   @   PRINT
   
 

POLYGON
Typ: Befehl
Syntax:  POLYGON <Feld>
Erklärung:  Zeichnet ein Polygon (beliebiges n-Eck). Die Daten der Eckpunkte müssen in einem zweidimensionalen Variablenfeld vom Typ Short-Integer vorliegen.
Beispiel: DIM Pts%(1,10) 
READ Anzahl_Punkte 
FOR I=0 TO Anzahl_Punkte 
 READ Pts%(0,I),Pts%(1,I) 
 ' Pts%(0,I)= I-ter Koordinaten-X-Wert 
 ' Pts%(1,I)= I-ter Koordinaten-Y-Wert 
NEXT I 
CLS: POLYGON Pts%(0,Anzahl_Punkte) 
'Bitte beachten Sie: Das Variablenfeld für POLYGON muß ein Short-Integer-Feld sein, das auf (1,X), 'X=Anzahl der maximalen Punkte, dimensioniert wurde. Alles andere funktioniert nicht. 
END 

DATA 6, 50,75, 150,125, 200,100 
DATA 150,74, 50,125, 50,75

Ergebnis:  Es wird ein Polygon gezeichnet
siehe auch:  PPOLYGON
   
 

PPOLYGON
Typ: Befehl
Syntax:  PPOLYGON <Feld>
Erklärung:  Zeichnet ein Polygon wie bei POLYGON, jedoch ausgefüllt mit einem Muster (einstellbar mit FILL STYLE und FILL COLOR).
siehe auch:  POLYGON 
   
 

PRBOX
Typ: Befehl
Syntax:  PRBOX <num.Ausdruck>,<num.Ausdruck> {TO<num.Ausdruck>,<num.Ausdruck>|,<num.Ausdruck>,<num.Ausdruck>} 
PRBOX <X>,<Y> {TO<X2>,<Y2>|,<Breite>,<Höhe>}
Erklärung:  Zeichnet ein gefülltes Rechteck mit abgerundeten Ecken auf den Bildschirm. Dabei sind entweder zwei gegenüberliegende Ecken anzugeben, oder eine Ecke, Breite und Höhe des Rechtecks. 
Die Stärke der Rundung kann mit der Prozedur 'Set_Roundings' aus der ExtensionLibrary eingestellt werden. 
Gefüllt wird mit der durch FILL COLOR definierten Farbe und dem durch FILL STYLE definierten Füllstil. 
Die Umrandung ist unabhängig von den Einstellungen durch LINE STYLE und LINE WIDTH immer eine durchgezogene, ein Pixel breite Linie. Die Farbe entspricht der Füllfarbe. Die Umrandung kann mit OUTLINE ON|OFF ein- bzw. ausgeschaltet werden. Ist mittels CLIP ein Bildfenster definiert, wird außerhalb dieses Bereiches nicht gezeichnet. 
siehe auch:  RBOX    BOX   PBOX   Set_Roundings 
   
 

PRINT
Typ: Befehl
Syntax:  PRINT [[<Ausdruck>][,[[<Ausdruck>]<,|;>]...] 
Für <Ausdruck> kann jeweils eingesetzt werden: 
{TAB(<num.Ausdruck>) | USING [<String-Ausdruck>] | <num.Ausdruck> | <String-Ausdruck>}
Erklärung:  Der PRINT Befehl dient zur Ausgabe von Ergebnissen auf dem Bildschirm. Er kann über den CMD-Befehl auch auf andere Ausgabegeräte umgelenkt werden. Die Ausgabe läßt sich auf verschiedene Weise tabulieren. 
Steht am Ende ein Komma oder sind die Ausdrücke durch Kommata getrennt, so geht der Cursor jeweils zur nächsten Tabulatorposition, bei einem Semikolon bleibt der Cursor an der letzten Schreibposition. 
Wenn am Ende der PRINT-Anweisung weder Komma noch Semikolon erscheinen wird automatisch ein Zeilenvorschub ausgegeben. 
Eine weitere Tabuliermöglichkeit bietet der TAB-Befehl. Der Cursor rückt immer auf die angegebene Tabulatorspalte vor. Ist diese Spalte durch frühere Ausgaben bereits überschritten, so wird die Cursor-Position nicht verändert. 
Mit eingefügten USING Befehlen läßt sich die Form der nachfolgenden Ausgaben beeinflussen.
Beispiel:  PRINT 1,2,3 
 PRINT 1,2, 
 PRINT 3 
 PRINT TAB (10);1; TAB (20);2
Ergebnis:   1       2       3 
 1       2       3 
           1         2
siehe auch:  PRINT USING    PRINT #     @     WRITE    LPRINT
   
 

PRINT #
Typ: Befehl
Syntax:  PRINT # [[<num.Ausdruck>][,[[<Ausdruck>]<,|;>]...] 
PRINT # [[<Dateinummer>][,[[<Daten>]<,|;>]...] 
Erklärung:  Genauso wie PRINT dient auch PRINT # der Ausgabe. Es wird auf die durch die Dateinummer bestimmte Datei ausgegeben. 
Wenn hinter PRINT # mehrere Ausdrücke stehen, so werden diese als ein einziger String ausgegeben. Kommas zwischen den Elementen werden in Tabulatorzeichen umgewandelt. Es werden also nicht wie bei WRITE # zusätzliche Trennzeichen eingefügt. Daher kann eine mit PRINT # geschriebene Zeile nur als ganzes mit INPUT # eingelesen werden. Sollen die einzelnen Elemente getrennt bleiben, so müssen Sie für jedes Element einen eigenen PRINT # Befehl verwenden oder zwischen den Elementen CHR$(13) einfügen (z.B. PRINT #1, "Affe";CHR$(13);"Banane") oder besser gleich WRITE # verwenden.
PRINT # kann auch benutzt werden, um Daten auf die Modemschnittstelle bzw. Druckerschnittstelle auszugeben. In diesem Fall muß der Kanal zuvor mit OPEN "V" bzw. OPEN "P" geöffnet worden sein.
Beispiel: OPEN "O",1,FN Get_Fsspec$(0,0,"TEST.DAT") 
PRINT #1,"Mensch","Affe","Banane" 
CLOSE 1
OPEN "I",1,FN Get_Fsspec$(0,0,"TEST.DAT") 
INPUT #1,A$:'Ließt alle drei Strings, da die Kommas
PRINT A$:'als Tabulatoren gespeichert wurden.  
CLOSE 1
Ergebnis:  Mensch Affe Banane 
siehe auch:  PRINT    WRITE
   
 

PRINT @
Typ: Befehl
Syntax:  PRINT @(<num.Ausdruck>,<num.Ausdruck>); ... 
PRINT @(<Zeile>,<Spalte>); ...
Erklärung:  Ausgabe und Syntax wie bei PRINT. Zusätzlich wird eine Startzeile und eine Startspalte angegeben, bei denen die Ausgabe beginnt. Die Zählung für die Zeile und die Spalte beginnt bei Null. 
Grundsätzlich liefert die @(<Zeile>,<Spalte>) Funktion einen String, der über PRINT ausgegeben den Cursor an die entsprechende Position setzt. Diese Funktion kann daher überall da erscheinen, wo ein beliebiger anderer String hätte stehen können. 
Beispiel: FOR I=0 TO 20 
 PRINT @(I,2*I);"*" 
NEXT I
Ergebnis:  Es wird eine Diagonale aus Sternchen gedruckt.
siehe auch:  PRINT
   
 

PRINT USING
Typ: Befehl
Syntax:  PRINT USING <String-Ausdruck>... 
PRINT USING <Formatstring>...
Erklärung:  PRINT USING dient zur formatierten Zahlenausgabe. Alle Möglichkeiten zur Tabulierung und die gesamte Syntax wie bei PRINT stehen zur Verfügung. Zusätzlich kann an jeder Stelle der USING-Befehl, gefolgt von einem Steuerstring, auftauchen. Die im Steuerstring getroffenen Formatanweisungen gelten dann solange für jede numerische Ausgabe, bis ein neues USING Kommando auftaucht oder der PRINT-Befehl zu Ende ist.

Im Einzelnen gibt es folgende Formatierungsmöglichkeiten:

"#"   steht für eine Ziffer 
"."    Dezimal-Punkt an dieser Stelle 
","    Dezimal-Komma an dieser Stelle 
"," & "." Dezimal-Punkt wo angegeben; Tausender mit "," trennen 
"." & "," Dezimal-Komma wo angegeben; Tausender mit "." trennen 
",,,"  Tausender mit "," trennen; keine Nachkomma-Stellen 
"..."  Tausender mit "." trennen; keine Nachkomma-Stellen 
"-"  Wenn negativ, Minuszeichen an dieser Stelle 
"+"  Vorzeichen immer an dieser Stelle ausgeben (auch +)

Ausnahme zu +/-: 
Steht das "+" oder "-" direkt vor dem ersten "#", "*", "." oder ",", so wird das Vorzeichen direkt vor der ersten gültigen Stelle ausgegeben.

"*<Zeichen>" vorderes Füllzeichen festlegen. Das Zeichen "_" (Unterstrich) darf nicht Füllzeichen sein. Nicht benutzte Ziffernstellen (also "#"-Zeichen etc.) werden normalerweise als Leerzeichen ausgegeben. Mit z.B. "*0" werden diese Ziffernstellen als Nullen ausgegeben, d.h., man erreicht eine Ausgabe mit führenden Nullen.

"_<Zeichen>" gibt das Zeichen aus, auch wenn es sich um ein Zeichen handelt, das normalerweise eine Bedeutung 
für den Formatstring hätte. "_#" gibt beispielsweise ein "#" aus; dieses "#" ist dann kein Platzhalter für eine Ziffer.

"^^^^" Exponent steht an dieser Stelle (erzwingt Exponentialdarstellung)

Alle weiteren Zeichen werden so ausgegeben, wie sie sind.

Hinweis: Wenn Sie für das Vorzeichen nicht extra eine Stelle zuweisen, beansprucht es 1 Ziffernstelle für sich (auch wenn die Zahl positiv ist). Die Formatmaske "###" kann daher z.B. nur zweistellige Werte fassen, da eine Stelle immer für das Vorzeichen reserviert bleibt. Wenn der auszugebende Wert nicht in die Formatmaske paßt, so wird die Maske selbst mit einem "%" am Anfang ausgegeben.

Wichtig: PRINT USING rundet nicht, die Nachkommastellen werden einfach abgeschnitten.

Einschränkungen bei PRINT USING: 
Sie dürfen nicht mehr als insgesamt 30 Ziffernplatzhalter definieren. Die Anzahl der Stellen für den Exponenten darf nicht kleiner sein als 4. Das Zeichen "_" (Unterstrich) darf nicht Füllzeichen sein. Die gesamte Länge des Formatstrings darf nicht größer sein als 253 Zeichen. Wenn Sie in einer Zeile, die einen PRINT USING oder USING-Befehl enthält, eine Fehlermeldung erhalten, dann könnte das auch an einem fehlerhaften Formatstring (etwa: zwei Vorzeichen) liegen.
Beispiel:  PRINT USING "####.##",1.5 
 PRINT USING "# # # # #",1000 
 Betrag!=13450.99 
 PRINT USING "**.########,## DM",Betrag! 
 Betr#=123456789.01# 
 PRINT USING "*0### Millionen ### Tausend und ### DM, ## PF-",Betr# 
 PRINT USING "##.##### ^^^^"; EXP(10) 
 PRINT USING "###### DM",FN Round!(Betrag!,0) 
 END 
 DEF FN Round!(Betrag!,Stellen) 
  LOCAL Scale!=10^Stellen 
  RETURN FIX(Betrag!*Scale!+.5)/Scale! 
 END_FN
Ergebnis:     1.50 
  1 0 0 0 
*****13.450,99 DM 
00123 Millionen 456 Tausend und 789 DM, 01 PF 
 2.20264 E  +4 
 13451 DM
siehe auch:  PRINT     USING     LPRINT USING      INPUT USING
   
 

PROC
Typ: Befehl
Syntax:  [PROC] <Prozedur-Bezeichner>[(]<Ausdruck>[[,<Ausdruck>]][)]
Erklärung:  Ruft eine selbstdefinierte Prozedur (siehe DEF PROC) auf. Wie Sie der Syntaxbeschreibung entnehmen können, ist die Angabe des Wortes "PROC" optional, d.h. Sie können die Prozedur einfach durch Nennung ihres Namens aufrufen. Falls die Prozedur allerdings einen reservierten Namen hat, also genauso heißt wie ein BASIC-Befehl (z.B. DEF PROC Or(A,B)), so muß vor dem Aufruf immer das Wort PROC angegeben werden, da der Editor sonst nicht wissen kann, ob der Basic-Befehl 'OR' oder Ihre Prozedur 'Or' gemeint ist. Um Verwirrung zu vermeiden, sollte man auf solche Prozedurnamen verzichten. 
Auch die Angabe der Klammern, die die Parameter einschließen, ist freigestellt. Ein Prozeduraufruf unterscheidet sich somit kaum von Standard-Befehlen.
Beispiel: Zentriere "Das ist ein Test" 
Home 
Input "Ende mit [Return]";Dummy 
END 

DEF PROC Zentriere(Text$) 
 PRINT TAB((W_CHAR-LEN(Text$))/2);Text$; 
END_PROC 
DEF PROC Home ' Cursor in die linke obere Ecke setzen 
 PRINT CHR$(27);"H"; 
END_PROC

Ergebnis:  Der Text "Das ist ein Test wird zentriert ausgegeben und danach der Cursor in die linke obere Ecke des Bildschirms zurückgesetzt.
siehe auch:  DEF PROC    FN
   
 

PUT
Typ: Befehl
Syntax:  PUT <num.Ausdruck>,{<num.Ausdruck>[,<num.Ausdruck]|<String-Ausdruck>,<num.Ausdruck>} 
1: PUT <Dateinummer>,<Satznummer> 
2: PUT <Dateinummer>,<Speicheradresse>,<Anzahl> 
3: PUT <Dateinummer>,<String-Ausdruck>
Erklärung:  Nach Syntax 1 wird ein Datensatz in die durch die Dateinummer gegebene Datei geschrieben. Die Datei muß zuvor mittels OPEN "R" geöffnet worden sein. Die geschriebenen Daten setzen sich aus den in FIELD genannten Puffervariablen zusammen. Da die Länge der Puffervariablen nicht verändert werden darf, empfiehlt sich die Zuweisung mit LSET oder RSET.

Nach Syntax 2 bzw. 3 wird die angegebene Anzahl Bytes ab der RAM-Adresse bzw. der gegebene String-Ausdruck in die mit der Dateinummer genannte Datei geschrieben. Die Datei muß zuvor mit OPEN "U" geöffnet worden sein. 
PUT kann auch benutzt werden, um Daten auf die Modemschnittstelle bzw. Druckerschnittstelle auszugeben. In diesem Fall muß der Kanal zuvor mit OPEN "V" bzw. OPEN "P" geöffnet worden sein.
Beispiel: Adresse$="Heinz Ramrom, Dateiweg 1, 01234 Bitburg 
OPEN "U",1,FN Get_Fsspec$(0,0,Adressen) 
PUT 1, Adresse$ 
CLOSE 1
Ergebnis:  Die Adresse wird in die Datei Adressen geschrieben
siehe auch:  GET   OPEN    FIELD
   
 

RAD
Typ: Befehl
Syntax:  RAD
Erklärung:  Schaltet für trigonometrische Funktionen auf Berechnung nach Bogenmaß um (0 bis 2 PI). Dies ist auch die Standardeinstellung. 
siehe auch:  DEG
   
 

RBOX
Typ: Befehl
Syntax:  RBOX <num.Ausdruck>,<num.Ausdruck> {TO<num.Ausdruck>,<num.Ausdruck>|,<num.Ausdruck>,<num.Ausdruck>} 
RBOX <X>,<Y> {TO<X2>,<Y2>|,<Breite>,<Höhe>}
Erklärung:  Zeichnet ein nicht gefülltes Rechteck mit abgerundeten Ecken auf den Bildschirm. Dabei sind entweder zwei gegenüberliegende Ecken anzugeben, oder eine Ecke, Breite und Höhe des Rechtecks. Linienfarbe, Linienstil 
und Linienbreite können über LINE COLOR, LINE STYLE bzw. LINE WIDTH bestimmt werden. 
Ist mittels CLIP ein Bildfenster definiert, so wird außerhalb dieses Bereiches nicht gezeichnet. 
Die Stärke der Rundung kann mit der Prozedur 'Set_Roundings' aus der ExtensionLibrary eingestellt werden.
siehe auch:  BOX    PBOX    PRBOX    Set_Roundings
   
 

READ
Typ: Befehl
Syntax:  READ <Variable>[[,<Variable>]] 
Erklärung:  Der Variablen wird eine durch DATA definierte offene Zuweisung übergeben. Die offenen Zuweisungen werden der Reihe nach gelesen. Der Zeiger, der auf die nächste zu lesende Zuweisung zeigt, kann jedoch mit RESTORE verschoben werden. 
Die Zuweisung eines String-Ausdrucks an eine numerische Variable oder umgekehrt ist unzulässig. Dieser Fehler wird vom Omikron Basic aber nur erkannt, wenn COMPILER "DEBUG ON" gesetzt wurde.
Beispiel: DATA "Hund",A$,"Maus",A$ 
Inh=2 
READ A$ 
READ B$ 
PRINT A$,B$ 
RESTORE Label1 
READ C$,A 
PRINT C$,A 
-Label1:DATA "Katze",23*Inh
Ergebnis:  Hund    Hund 
Katze    46
siehe auch:  DATA    RESTORE
   
 

REGISTER
Erklärung:   Dieses Wort ist reserviert. Bitte nicht verwenden!
   
 

REM
Typ: Befehl
Syntax:  REM <beliebiger Text>
Erklärung:  Durch REM abgetrennte Texte werden vom BASIC nicht beachtet und dienen nur dem Programmierer zur Erläuterung oder ähnlichem. 
Im Gegensatz zu dem Hochkomma,das an jeder Stelle im Programm (außer in durch " " eingeschlossene Teile) stehen kann, muß REM entweder am Zeilenanfang oder hinter einem Befehlstrenner stehen. Der Rest dieser Zeile ist dann als Kommentartext gekennzeichnet. Ein Befehlstrenner ist in der Regel ein Doppelpunkt, aber auch ELSE, ENDIF, THEN. WHILE und REPEAT sind Befehlstrenner. Befehle, die in einer Zeile hinter einem REM stehen, werden als Kommentar angesehen und nicht ausgeführt.
siehe auch:  ' (Kommentar)
   
 

RENUM
Erklärung:   Hat in Omikron Basic keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden
   
 

REPEAT
Typ: Befehl
Syntax:  REPEAT
Erklärung:  Leitet die REPEAT ... UNTIL Schleife ein. Alles, was zwischen REPEAT und UNTIL steht, wird solange ausgeführt, bis die Bedingung hinter UNTIL erfüllt (<>0) ist. Da die Bedingung erst am Ende des ersten Durchlaufs geprüft wird, muß die Schleife mindestens einmal durchlaufen werden, selbst wenn die Bedingung nie erfüllt war. 
Durch Angabe einer nie erfüllten Bedingung (die 0) kann die REPEAT ... UNTIL Schleife auch als Endlosschleife verwendet werden, die nur mit EXIT verlassen werden kann.
Beispiel: REPEAT 
 I+=1 
 PRINT I, 
UNTIL I>4 
REPEAT 
 INPUT "Geben Sie eine Zahl ein:";Zahl 
 Summe+=Zahl 
 IF Zahl=0 THEN EXIT 
UNTIL 0 
PRINT Summe
Ergebnis:  1   2   3   4   5 
In der zweiten Schleife werden Sie wiederholt aufgefordert, eine Zahl einzugeben. Das Programm merkt sich die Summe aller eingegebenen Zahlen. Ist die Eingabe 0, so wird die Schleife verlassen und die Gesamtsumme auf dem Bildschirm ausgegeben.
siehe auch:  UNTIL   EXIT    FOR    WHILE
   
 
 
 
RESERVED 
Typ: Funktion 
Syntax:  RESERVED(<num.Ausdruck>) 
Erklärung:  RESERVED ermöglicht den Zugriff auf interne Speicherbereiche des Omikron Basics. Insbesondere ergibt RESERVED(0) den Rückgabewert (das Register R3) des letzten Maschinenprogramms, das mit CALL aufgerufen wurde. 
   
 

RESTORE 
Typ: Befehl 
Syntax:  RESTORE [<Marke>] 
Erklärung:  Der Zeiger, der auf die nächste durch READ zu lesende offene Zuweisung zeigt, wird verschoben. Er zeigt auf die erste durch DATA definierte offene Zuweisung, die hinter der Marke erscheint. 
RESTORE ohne Marke verschiebt den Zeiger auf die erste überhaupt im Programm erscheinende offene Zuweisung. Dort steht der Zeiger auch zu Programmbeginn. 
Beispiel: DATA "Katze","Maus" 
DATA "Hund","Maus" 
-Bleistift 
DATA "Radiergummi" 
READ A$: PRINT A$ 
RESTORE 5-4 
READ B$: PRINT B$ 
RESTORE Bleistift 
READ C$: PRINT C$ 
RESTORE 
READ D$,E$,F$: PRINT D$,E$,F$ 
Ergebnis:  Katze 
Hund 
Radiergummi 
Katze Maus Hund 
siehe auch:  DATA    READ 
   
 

RESUME 
Typ: Befehl
Syntax:  RESUME [{NEXT|<Marke>}] 
Erklärung:  RESUME beendet eine mit ON ERROR GOTO definierte Fehlerroutine. Es wird an den Anfang der Zeile gesprungen, in der der Befehl steht, der den Fehler ausgelöst hat. Bei RESUME NEXT wird der verursachende Befehl übersprungen und in der nächsten Zeile fortgefahren. Soll das Programm an anderer Stelle fortgesetzt werden, so ist auch die Angabe einer Sprungmarke möglich.

Achtung: RESUME mit Sprungmarke verläßt keine Strukturen oder Unterprogramme, die Sprungmarke muß also immer in derselben Hierarchieebene liegen, in der auch der Fehler erfolgte.

Hinweis: Wenn RESUME, RESUME NEXT oder RESUME Label in Ihrem Programm vorkommen, wird automatisch TRACE_ON eingeschaltet, das heißt, Programmzeiger und Stackpointer werden zu Beginn einer jeden Zeile gesichert. Dadurch wird Ihr Programm länger und die Ausführungsgeschwindigkeit verringert sich etwas.
Beispiel: ON ERROR GOTO Fehler 
PRINT 1/0 
PRINT LN(-1) 
END 
-Fehler 
 FORMALERT (1,"[2]["+ ERR$ +"|in Zeile"+ STR$( ERL )+"] [Nochmal|Weiter|Abbruch]",F_But) 
 IF F_But=1 THEN RESUME 
 IF F_But=2 THEN RESUME NEXT 
 IF F_But=3 THEN RESUME Fatal 
-Fatal 
 PRINT "Fataler Fehler erzwang Programmabbruch:" 
 PRINT ERR$ ;" in Zeile"; ERL 
 END 
Ergebnis:  Zunächst wird ein Fehler ausgelöst (Division durch Null bzw. Logarithmus mit negativem Argument). Dadurch wird in die Fehlerroutine verzweigt, in der der Anwender jetzt über eine Alertbox nach dem weiteren Verfahren befragt wird.
siehe auch:  ON ERROR GOTO     ERR     ERL     ERR$ 
   
 

RETURN 
Typ: Befehl 
Syntax:  RETURN [<Ausdruck>] 
Erklärung:  RETURN verläßt eine Prozedur oder ein Unterprogramm. RETURN mit Angabe eines Ausdrucks verläßt eine mehrzeilige Funktion und gibt den Ausdruck als Funktionswert zurück. Der Programmablauf wird hinter der Stelle fortgesetzt, von der aus der Aufruf erfolgt ist. 
Prozeduren können (und sollten) auch mit END_PROC abgeschlossen werden, wobei pro Prozedur allerdings nur ein END_PROC verwendet werden darf, damit Anfang und Ende einer Prozedur klar definiert sind. 
Ebenso steht für Funktionen der Befehl END_FN zu Verfügung. Dieser beschließt jedoch nur das Ende der Funktionsdefinition und gibt selbst keine Werte zurück. Trotzdem sollte er stets verwendet werden, um das Ende einer Funktion (speziell mit mehreren Ausgängen) klar zu kennzeichnen. 
RETURN darf nicht innerhalb einer Struktur wie REPEAT ... UNTIL, FOR ... NEXT, WHILE ... WEND oder SELECT ... CASE aufgerufen werden. Es muß vielmehr immer zuerst die Struktur per EXIT verlassen werden. Erst dann darf mit RETURN zurückgesprungen werden. 
Beispiel: PRINT FN Fib(10) 
INPUT "Ende mit [Return] ";Dummy 
END 
DEF FN Fib(N) 
 IF N>2 
  THEN  RETURN FN Fib(N-1)+FN Fib(N-2) 
  ELSE  RETURN 1 
 ENDIF 
END_FN 
Ergebnis:   55
siehe auch:  PROC    FN    GOSUB    DEF FN    DEF PROC    END_PROC    END_FN    RESUME 
   
 
 
RIGHT$ 
Typ: Funktion
Syntax:  RIGHT$(<String-Ausdruck>,<num.Ausdruck>) 
Erklärung:  Ergibt einen Teilstring des String-Ausdrucks mit der durch den numerischen Ausdruck gegebenen Länge. Der Teilstring endet am letzten Zeichen des String-Ausdrucks. Ist der numerische Ausdruck größer als die Länge des String-Ausdrucks, so wird der gesamte String zurückgegeben. 
Beispiel: A$="Omikron.Basic" 
PRINT RIGHT$(A$,5) 
Ergebnis:  Basic 
siehe auch:  LEFT$    MID$    INSTR 
   
 

RMDIR 
Typ: Befehl 
Syntax:  RMDIR <String-Ausdruck> 
RMDIR <Dateiname> 
Erklärung:  Entfernt einen Ordner, vorausgesetzt, darin sind weder Dateien noch Unterordner enthalten. <Dateiname> ist ein FileSpecificationRecord, wie man ihn von FILESELECT oder FN Get_Fsspec$ zurückerhält. Wenn der Ordner nicht leer ist, erhält man eine Fehlermeldung des File Managers.

Hinweis: Am Ende des Namens darf kein Doppelpunkt stehen.
siehe auch:  MKDIR    KILL   FN Get_Fsspec$
   
 

RND 
Typ: Funktion 
Syntax:  RND(<num.Ausdruck>) 
Erklärung:  Ergibt eine Zufallszahl in Abhängigkeit vom numerischen Ausdruck: 

0 : Letzte Zufallszahl wiederholen 
1 : Wert von einschließlich 0 bis ausschließlich 1 
sonst: ganzer Wert zwischen 0 und dem numerischen Ausdruck, wobei der größere von beiden nicht erreicht wird.

Hinweis: Da Apple Computer keinen echten Zufallsgenerator enthalten, wird die Zufallszahl über eine Funktion ermittelt, die eine ähnliche Verteilung liefert, wie eine echte Zufallszahl. Dennoch ist das Ergebnis deterministisch. Sie werden also unter gleichen Anfangsbedingungen immer die gleiche Folge von Zufallszahlen erhalten. Man bezeichnet diese deshalb auch als Pseudo-Zufallszahlen. Im allgemeinen werden Sie davon aber nichts merken, da sich exakt gleiche Anfangsbedingungen in der Praxis nicht realisieren lassen.
Beispiel: PRINT RND(10) 
Ergebnis:  Es wird eine Zufallszahl zwischen 0 und 9 ausgegeben 
 
 

RSET
Typ: Befehl 
Syntax:  RSET <String-Variable>=<String-Ausdruck> 
Erklärung:  Der String-Ausdruck wird rechtsbündig in die String-Variable eingesetzt, ohne daß deren Länge verändert wird. Gegebenenfalls wird der String-Ausdruck vorne abgeschnitten. 
Beispiel: A$=SPACE$(20) 
RSET a$="Omikron" 
PRINT "*";A$;"*" 
Ergebnis:   *             Omikron* 
siehe auch:  LSET    FIELD    RIGHT$ 
   
 

RUN
Erklärung: Hat in Omikron Basic keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden
   
 

SAVE 
Erklärung:  Hat in Omikron Basic keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden. 
   
 

NOISE - POKE Inhalt | SCREEN - TEXT HEIGHT

Support | Bestellen | Start | Home: http://www.berkhan.de


© 1997-2001 Berkhan-Software