home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / basic / compiler / franzbas / basic.doc < prev    next >
Text File  |  1990-04-01  |  8KB  |  258 lines

  1.  
  2. FranzBasic
  3.  
  4. zum 1.11.1989 implementierte Funktionen
  5.  
  6. Daten-Definitionen
  7.  
  8. DIM       Felder definieren
  9.       Dim Preis(10), y%(20)
  10. RECORD    Variable vom Typ Record definieren
  11.       RECORD Rtype1 Asatz
  12. RECTYPE   Record-Type definieren
  13.       RECTYPE
  14.         RECVAR A$ 20, i%, Preis
  15.       ENDREC
  16. STATIC    Lokale Variable statisch erklΣren
  17.       STATIC i%
  18. LOCAL     ErklΣrt eine Variable als lokal in einer Subroutine
  19.       LOCAL i%, Preis
  20.  
  21.  
  22. Programm-Steuerung
  23.  
  24. PAUSE     Text anzeigen und auf Tastendruck warten
  25.       PAUSE "Taste drⁿcken, wenn's weitergehen soll"
  26. GOTO      Label anspringen
  27.       GOTO Anfang
  28. AND       Logischer Operator in IF-Anweisungen
  29.       If i% > 0 AND len% > 0 THEN ....
  30. NOT       Logischer Operator in IF-Anweisungen
  31.       If NOT (i% > 0 AND len% > 0) THEN ....
  32. OR        Logischer Operator in IF-Anweisungen
  33.       If i% > 0 OR len% > 0 THEN ....
  34. IF        IF-Schleife
  35.  
  36.       IF Preis < 100.0 Then Print "OK"  (einzeilige Anweisung)
  37.  
  38.       IF Preis < 100.0 Then             (mehrzeilig)
  39.          ...
  40.       ELSE
  41.          ...
  42.       ENDIF
  43.  
  44.       IF Preis < 100.0 Then
  45.          ...
  46.       ELSIF Preis < 150.0 Then
  47.          ...
  48.       ELSE
  49.          ...
  50.       ENDIF
  51. BREAK     VerlΣsst WHILE-, REPEAT- oder FOR-Schleife
  52. FOR       FOR-Schleife
  53.       FOR I% = 1 To 20 [Step 1]
  54.          ...
  55.          IF .... THEN BREAK
  56.          ...
  57.       ENDFOR
  58. NEXT      Synonym fⁿr ENDFOR
  59. REPEAT    REPEAT-Schleife
  60.       REPEAT
  61.         ...
  62.         If ... Then Break
  63.         ...
  64.       UNTIL x < 0
  65. UNTIL     siehe REPEAT
  66. SUBROUTINE Unterprogramm einleiten
  67.  
  68.       SUBROUTINE Add%(a%,b%)
  69.         Print "Summe 0 ";a%+b%
  70.         Return a%+b%
  71.       ENDSUB
  72.  
  73.       GOSUB Add%(100,45)                  Aufruf als Prozedur
  74.       Summe% = Add%(100,45)               Aufruf als Funktion
  75.  
  76. VAR       Formalparameter durch Referenz ⁿbergeben
  77.       Subroutine C1$(VAR S$)
  78.         S$ = "ABC"    'Ohne VAR Σndern von s$ nicht m÷glich)
  79.       Endsub
  80. RETURN    Siehe Subroutine
  81. GOSUB     Subroutine aufrufen
  82.       GOSUB Drucken()
  83. WHILE     WHILE-Schleife
  84.       i% = 20
  85.       WHILE i%
  86.         ...
  87.         If ... Then Break
  88.         ...
  89.         i% = i%-1
  90.       WEND
  91. STOP      Programm beenden
  92.       STOP
  93.  
  94.  
  95. Mathematische Funktionen
  96.  
  97. SIN       Sinus-Funktiom
  98.       X = SIN(Y)
  99. COS       Cosinus
  100.       X = COS(Y)
  101. TAN       Tangens-Funktion
  102.       x = TAN(y)
  103. ATN       Arcustangens
  104.       x = ATN(Y)
  105. EXP       Exponentialfunktion
  106.       X = EXP(y)
  107. LOG       Natⁿrlicher Logarithmus
  108.       x = LOG(y)
  109. SQR       Quadratwurzel
  110.       X = SQR(Y)
  111.  
  112. String-Befehle und Funktionen
  113.  
  114. SET$      Teilstring ⁿberschreiben
  115.       A$ = "ABcd" : Teil$ = "xx" : SET$ A$,2,Teil$ --> A$ = "Axxd"
  116. DELETE$   Teilstring l÷schen
  117.       DELETE$   A$,3,4 --> In String A$ werden ab Stelle 3
  118.       4 Char entfernt
  119. INSERT$   String in anderen String einsetzen
  120.       A$ = "Ad" : Teil$ = "Bc" : INSERT$ A$,2,Teil$ --> A$ = "ABcd"
  121. INSTR%    Stellt fest, ob String in einen anderen enthalten ist und gibt
  122.       Position zurⁿck, 0 wenn nicht enthalten
  123.       i% = INSTR%S$,Teil$) --> i% = 3, wenn S$="123ABC", TEIL$="3A"
  124. LEFT$     Linken Teilstring eines Strings bilden
  125.       Links$ = LEFT$("ABcd",2) --> Links$ = "AB"
  126. MID$      Teilstring aus Mitte eines Strings bilden
  127.       Teil$ = MID$("ABcdZ",2,3) --> Teil$ = "BcD"
  128. RIGHT$    Linken Teilstring eines Strings bilden
  129.       Rechts$ = RIGHT$("ABcd",2) --> Rechts$ = "cd"
  130. LTRIM$    Fⁿhrende Leerstellen in String abschneiden
  131.       S$ = "    123" : S$=LTRIM$(S$) --> s$="123"
  132. TRIM$     Nachfolgende Blanks von String abschneiden
  133.       S$ = "123   2" : S$=Trim(S$) --> S$ = "123"
  134. LCASE$    String in lowercase(Kleinschrift) darstellen
  135.       Klein$ = LCASE$("ABcd") --> Klein$ = "abcd"
  136. UCASE$    String in uppercase(Gro▀schrift) darstellen
  137.       Gross$ = UCASE$("ABcd") --> Gross$ = "ABCD"
  138. LEN%      LΣnge eines Strings ermitteln
  139.       l% = LEN%("ABcd") --> l% = 4
  140. ASC%      liefert ASC-Zahlenwert des 1. Characters einer Zeichenkette
  141.       i% = ASC%("ABC") --> i% = 65
  142. CHR$      Wandelt Integer-Wert in String-Character
  143.       A$ = CHR$(66) --> A$ = "B"
  144. STR$      Zahl in Zeichenkette wandeln
  145.       A$ = STR$(100.0) --> A$ = "100.0"
  146. VAL       Realzahl aus String erzeugen
  147.       a = VAL("123.9") --> a = 123.9
  148. VAL%      Integerzahl aus String erzeugen
  149.       a% = VAL%("123.9") --> a% = 123
  150.  
  151. Datenbank-Befehle
  152.  
  153. DBCREATE  Datenbank erzeugen mit Satzstruktur
  154.       DBCREATE "Artikel",Artikelsatz
  155. DBOPEN    Datenbank ÷ffnen
  156.       DBOPEN #1,"Kunden"
  157. DBCLOSE   Schliessen Datenbank
  158.       DBCLOSE #1
  159. DBGET     Datenbank lesen ⁿber Schlⁿssel
  160.       DBGET #1,Kundennr$,Kundensatz
  161. DBPUT     Datenbank schreiben
  162.       DBPUT #2, Artikelsatz
  163. DBDELETE  Zuletzt gelesenen Satz in Datenbank loeschen
  164.       DBDELETE #1
  165. DBBROWSE  DurchblΣttern einer Datenbank am Bildschirm
  166.       Startsatz und Format k÷nnen eingestellt werden
  167.       DBBROWSE #1[,Start$,Format$]
  168.  
  169. Bildschirm-Steuerung
  170.  
  171. CLS       Loescht Bildschirm
  172. COLOUR    Einstellen von Vorder- und Hintergrundfarbe
  173.       COLOUR 7,0 --> Weiss auf Schwarz
  174. LOCATE    Cursor positionieren
  175.       LOCATE x%,y%
  176.  
  177. IO-Behandlung (Dateien, Tastatur, Drucker)
  178.  
  179. OPEN      Datei ÷ffnen
  180.       OPEN "I", #1,"Fakt.txt"                 ╓ffnen fⁿr Input
  181.       OPEN "O", #1,"Fakt.txt"                 ╓ffnen fⁿr Output
  182.       OPEN "R", #1,"Fakt.txt",Artikelsatz     ╓ffnen fⁿr Random-Access
  183. CLOSE     Schliesst Datei
  184.       Close #3
  185. INPUT     Daten einlesen
  186.       INPUT [Prompt$,]a%      (ⁿber Tastatur)
  187.       INPUT #4, a%  (aus Datei)
  188. LINE      Vorsatz zu INPUT, liesst bis zum Zeilenende
  189.       LINE INPUT #1,A$
  190. PRINT     Bildschirmausgabe / Dateiausgabe
  191.       PRINT "Gesamtsumme=";GS
  192.       PRINT #4,"Gesamtsumme=";GS
  193. LPRINT    Ausgabe auf Drucker
  194.       LPRINT "Gesamtsumme=";GS
  195. USING     Druckmaske definieren
  196.       r$ = 4.9 : PRINT USING "##,###.##",r$,"",r$ --> Ausgabe 4.90  4.9
  197. WRITE     Data in Datei schreiben
  198.       WRITE #3, a%,s$
  199. GET       Satz aus Random-Datei lesen
  200.       GET #3, satznr%, satz$
  201. PUT       Satz in Random-Datei schreiben
  202.       PUT #3, satznr%, satz$
  203. ERASE     Datei L÷schen
  204.       Erase "abc.txt"
  205. RENAME    Datei umbenennen
  206.       RENAME altername$, neuername$
  207. INKEY$    Zuletzt ⁿber Tastatur eingegebenes Zeichen holen
  208.       INKEY$ a$
  209. LASTKEY%  Zuletzt gedrⁿckte Taste feststellen
  210.       If LASTKEY%() = 27 Then Return   (27 = ESC)
  211.  
  212. Verschiedenes
  213.  
  214. REM       Bemerkung, wird vom ▄bersetzer nicht ausgewertet
  215.       REM  Dies ist ein Kommentar
  216.       ' Dies ist auch einer           (' identisch mit REM am Satzanfang)
  217.       i% = 0 'i% zuruecksetzen        (' kann aber auch nach Anweisung
  218.                          folgen)
  219. ERROR%    Runtime-error feststellen
  220.       err% = error%()
  221. EXEC      Programm starten
  222.       EXEC "format.com"
  223.       EXEC SHELL
  224. INTERRUPT Interrupt erzeugen
  225.       INTERRUPT inr%,Regs
  226. TIMEDATE$ Zeit und Datum ermitteln
  227.       Zeit$ = TimeDate$(1) --> Zeit$ = "12:00:00"
  228.       Date$ = TimeDate$(2) --> Date$ = "6.9.1988"
  229.  
  230.  
  231. FranzBasic Spezial
  232.  
  233. DIALOG    Data erfassen
  234.       Dialog "Kundennr: ",Kundennummer$[,x%,y%]
  235. FILES     Dateien eines Typs anzeigen und Auswahl erm÷glichen
  236.       FILES "\Basic","*.bas",file$
  237. FORM      Datenerfassung fⁿr einen RECORD
  238.       FORM Artikelsatz$,[x%,y%]
  239. MENU      Menu erzeugen
  240.       Dim Mstring$(5)
  241.       MString$(1) = " Auswahl1 Auswahl2 Auswahl3 "
  242.       MString$(2) = " Hilfstext1 "
  243.       MString$(3) = " Hilfstext2 "
  244.       MString$(4) = " Hilfstext3 "
  245.       MString$(5) = ""
  246.       Menu MString$[,x%,y%]
  247. MESSAGE   MessageBox erzeugen
  248.       MESSAGE "Datei l÷schen|  Ja  Nein"
  249. MOUSE ON  Maus-Zeiger einschalten
  250. MOUSE OFF Maus-Zeiger ausschalten
  251. MOUSE     Maus-Daten lesen (gedrⁿckter Knopf, x-/y-Position)
  252.       Mouse Button%, x%, y%
  253.  
  254. Bezug durch: Zimmer Informatik, Postfach 140369, 4000 Dⁿsseldorf, Tel. (0211)203726
  255. Einfⁿhrungspreis DM 149,-- (Bar, Scheck, Nachnahme), Demo-Version DM 20,-- (nur bar)
  256. Version 1.1 wird eine Spreadsheet-Schnittstelle enthalten (Anfang 1990)
  257. Ab 1.1.90 liefern wir FranzBasic Windows, die Version fⁿr MS-Windows, mit Grafikbefehlen
  258.