home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1990 / 02 / heimwerk / ketten.bas
BASIC Source File  |  1989-10-29  |  2KB  |  58 lines

  1.    1: REM ********************************************************
  2.    2: REM *                  KETTEN.BAS                          *
  3.    3: REM *     Arbeit mit großen Zeichenkettenbeständen         *
  4.    4: REM *       (c) 1990 Dr. Lothar Wenzel & toolbox           *
  5.    5: REM ********************************************************
  6.    6: REM
  7.    7: KEY OFF:CLS
  8.    8: BEGINN=&H5000
  9.    9: ANZAHL=500
  10.   10: DEF FN SEGADR(NUMMER)=BEGINN+16*NUMMER
  11.   11: PRINT"Die Zufallszeichenketten werden geschrieben!"
  12.   12: FOR INDEX=1 TO ANZAHL
  13.   13:   TEXT$=""
  14.   14:   FOR INTERN=1 TO 100+INT(156*RND)
  15.   15:     TEXT$=TEXT$+CHR$(65+INT(25*RND))
  16.   16:   NEXT
  17.   17:   PRINT INDEX,
  18.   18:   GOSUB 38
  19.   19: NEXT
  20.   20: PRINT:PRINT
  21.   21: INPUT"Geben Sie einige Großbuchstaben ein: ";VERGLEICH$
  22.   22: PRINT:PRINT
  23.   23: PRINT"Hier die Liste der gefundenen Zeichenketten"
  24.   24: PRINT:PRINT
  25.   25: GOSUB 31
  26.   26: PRINT:INPUT "< 0 > weiteres Beispiel /  < 1 > ENDE ";C$
  27.   27: PRINT
  28.   28: IF C$="0" THEN 21
  29.   29: END
  30.   30: REM ************ Ausgabe der Zeichenketten ****************
  31.   31: FOR INDEX=1 TO ANZAHL
  32.   32:    GOSUB 47
  33.   33:    IF INSTR(TEXT$,VERGLEICH$)=0 THEN 35
  34.   34:    PRINT:PRINT"Nummer der Zeichenkette :";INDEX:PRINT TEXT$
  35.   35: NEXT
  36.   36: RETURN
  37.   37: REM ************ Ende Ausgabe *****************************
  38.   38: REM ************ Schreiben des Textes in den Speicher *****
  39.   39: DEF SEG=FN SEGADR(INDEX)
  40.   40: POKE 0,LEN(TEXT$)
  41.   41: FOR J=1 TO LEN(TEXT$)
  42.   42:   POKE J,ASC(MID$(TEXT$,J,1))
  43.   43: NEXT
  44.   44: DEF SEG
  45.   45: RETURN
  46.   46: REM ************ Ende der Schreibroutine ******************
  47.   47: REM ************ Lesen des Textes *************************
  48.   48: DEF SEG=FN SEGADR(INDEX)
  49.   49: TEXT$=""
  50.   50: FOR J=1 TO PEEK(0)
  51.   51:   BUCHSTABE$=CHR$(PEEK(J))
  52.   52:   TEXT$=TEXT$+BUCHSTABE$
  53.   53: NEXT
  54.   54: DEF SEG
  55.   55: RETURN
  56.   56: REM ************ Ende Leseroutine *************************
  57.   57: REM ************ Ende von KETTEN.BAS **********************
  58.