home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols000 / vol026 / xedit.bas < prev    next >
BASIC Source File  |  1985-02-09  |  3KB  |  124 lines

  1. REM    MAILING SYSTEM
  2.     TPYFILE$="SORT.FIL"
  3.     FILE    TPYFILE$
  4.     DIM FIRST$(40), LAST$(40), STREET$(40), CITY$(40)
  5.     DIM ZIP$(40), AREA$(40), TEL$(40)
  6.     ONE=1
  7.     CNT=ONE
  8.     PRINT CHR$(26)
  9.     PRINT  "START OF UPDATE"
  10.  
  11. 50    REM DATA ENTRY
  12.     INPUT "ENTER FIRST NAME:";FIRST$(CNT)
  13.     FIRST$(CNT)=FIRST$(CNT)+" "
  14.     INPUT "ENTER LAST NAME:";LAST$(CNT)
  15.     INPUT "ENTER STREET ADDRESS:";STREET$(CNT)
  16.     INPUT "ENTER CITY/STATE:";CITY$(CNT)
  17.     INPUT "ENTER POSTAL 'ZIP'";ZIP$(CNT)
  18.     INPUT "ENTER TEL.AREA CODE";AREA$(CNT)
  19.         INPUT "ENTER TELEPHONE NUMBER";TEL$(CNT)
  20.     PRINT
  21.     PRINT CNT
  22.     PRINT FIRST$(CNT);LAST$(CNT)
  23.     PRINT STREET$(CNT)
  24.     PRINT CITY$(CNT);", ";ZIP$(CNT)
  25.     PRINT "(";AREA$(CNT);") ";TEL$(CNT)
  26.     PRINT
  27.     IF FIRST$(CNT)="END " THEN 200
  28.  
  29. 90    REM
  30.     INPUT "ACCEPT(Y) ELSE REJECT(N): "; ANS$
  31.     IF ANS$="Y" THEN 100
  32.     IF ANS$="N" THEN 50
  33.     PRINT "PLS ENTER CORRECT OPTION"
  34.     GOTO 90
  35.  
  36. 100    REM    BUMP UP COUNT
  37.     PRINT "RECORD ACCEPTED"
  38.     PRINT
  39.     CNT=CNT+1
  40.     GOTO 50
  41.  
  42. 200    REM COUNT UP AND SORT
  43.     CNT=CNT-1
  44.     PRINT CNT;"ITEMS ENTERED"
  45.     OFF=0
  46.     SET=1
  47.     TWO=2
  48.     FILLER$="                        "
  49.     PRINT "SORTING...",
  50.  
  51.  
  52. 500    REM   SORT
  53.     LASTCNT=CNT-1
  54.     IF LASTCNT=0 THEN 900
  55.     CNT=1
  56.     FLAG=OFF
  57.  
  58. 550    REM SORT ITERATION
  59.     L$=LAST$(CNT)+FILLER$
  60.     L$=LEFT$(L$,24)
  61.     F$=FIRST$(CNT)+FILLER$
  62.     F$=LEFT$(F$,24)
  63.     NAME1$=L$+F$
  64.     L$=LAST$(CNT+1)+FILLER$
  65.     L$=LEFT$(L$,24)
  66.     F$=FIRST$(CNT+1)+FILLER$
  67.     F$=LEFT$(F$,24)
  68.     NAME2$=L$+F$
  69.     IF NAME1$ <= NAME2$ THEN 600
  70.     GOSUB 700
  71.  
  72. 600    CNT=CNT+1
  73.     IF CNT >LASTCNT THEN 800
  74.     GOTO 550
  75.  
  76. 700    REM   SWAP FIELDS
  77.     ZLAST$=LAST$(CNT)
  78.     ZFIRST$=FIRST$(CNT)
  79.     ZSTREET$=STREET$(CNT)
  80.     ZCITY$=CITY$(CNT)
  81.     ZZIP$=ZIP$(CNT)
  82.     ZAREA$=AREA$(CNT)
  83.         ZTEL$=TEL$(CNT)
  84.  
  85.     LAST$(CNT)=LAST$(CNT+1)
  86.     FIRST$(CNT)=FIRST$(CNT+1)
  87.     STREET$(CNT)=STREET$(CNT+1)
  88.     CITY$(CNT)=CITY$(CNT+1)
  89.     ZIP$(CNT)=ZIP$(CNT+1)
  90.     AREA$(CNT)=AREA$(CNT+1)
  91.         TEL$(CNT)=TEL$(CNT+1)
  92.  
  93.     LAST$(CNT+1)=ZLAST$
  94.     FIRST$(CNT+1)=ZFIRST$
  95.     STREET$(CNT+1)=ZSTREET$
  96.     CITY$(CNT+1)=ZCITY$
  97.     ZIP$(CNT+1)=ZZIP$
  98.     AREA$(CNT+1)=ZAREA$
  99.         TEL$(CNT+1)=ZTEL$
  100.  
  101.     FLAG=SET
  102.     RETURN
  103.  
  104. 800    REM    CHECK END OF SORT
  105.     IF FLAG=OFF THEN 900
  106.     FLAG=OFF
  107.     CNT=ONE
  108.     GOTO 550
  109.  
  110. 900    REM   WRITE OUT SORTED FILE
  111.     FOR CNT=1 TO LASTCNT+1
  112.     PRINT #ONE; LAST$(CNT),FIRST$(CNT),STREET$(CNT),CITY$(CNT),\
  113.         ZIP$(CNT),AREA$(CNT),TEL$(CNT)
  114.     PRINT LAST$(CNT),
  115.     NEXT CNT
  116.     PRINT #ONE; "END","END","END","END","END","END","END"
  117.     END
  118. ^:ε\º┬ª
  119. »2≡\2┤^!"╕^2║^═╖!⌠
  120. ═U> 2ε\1è^*░]|╡┬╜
  121. !╠^#6~º╩┤
  122. +"^»2^2∩\2Ü^2¢^2║^<2^!"╕^!═^"ÿ^═╘=>├2
  123. !2"
  124. "├2TARBELL BAS