回 帖 发 新 帖 刷新版面

主题:编了个实用的把钱龙股票数据从2~10 要编译成EXE错

编了个实用的把钱龙股票数据从2~10 要编译成EXE错 求教 谢谢!!
DECLARE SUB newfile (infile$, oufile$)
DECLARE SUB dell (a$, D$)
DECLARE SUB CC (y1!, bx!, LY$, O!)
DECLARE SUB CI (x1!, y1!, X2!, Y2!, LA$)
DECLARE SUB gudel (a$, s$, i%, c$)
CLS
INPUT " FILE =", FIST$

IF FIST$ = "f" OR FIST$ = "F" THEN
   INPUT "file   ", f$
   OPEN "f.bat" FOR OUTPUT AS #1
   PRINT #1, "copy " + f$ + " lis"
   CLOSE #1
   SHELL "f"
   CLS
   ELSE
   CALL newfile(FIST$, "lis")
   END IF
CLOSE #2
CLOSE #6
CLS
OPEN "lis" FOR INPUT AS #8


DO
IF EOF(8) THEN
CLOSE
END
END IF
LINE INPUT #8, file$
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

TYPE SUJU
       DATE AS LONG
       OPEN1 AS LONG
       HIGH1 AS LONG
       LOW1   AS LONG
       CLOSE1 AS LONG
       MONEY1 AS LONG
       VOLUME AS LONG
       NOUSE1 AS LONG
       NOUSE2 AS LONG
       NOUSE3 AS LONG

 END TYPE

 CLOSE #2
 CLOSE #1

 DIM ZHUAN AS SUJU
 OPEN file$ FOR RANDOM AS #1 LEN = LEN(ZHUAN)
 FILE1$ = file$
 CALL dell(FILE1$, ".DAY")
 PRINT FILE1$
 nb = LOF(1) / LEN(ZHUAN)
 FILE2$ = FILE1$ + ".@@@"
OPEN FILE2$ FOR OUTPUT AS #2
FOR a = 1 TO nb
     
      GET #1, a, ZHUAN
             'R1 = ZHUAN.CLOSE1 / 1000
       PRINT #2, ZHUAN.DATE,
       PRINT #2, ZHUAN.OPEN1 / 1000,
       PRINT #2, ZHUAN.CLOSE1 / 1000,
       PRINT #2, ZHUAN.HIGH1 / 1000,
       PRINT #2, ZHUAN.LOW1 / 1000,
       PRINT #2, ZHUAN.VOLUME

'       PRINT "MONEY=", ZHUAN.MONEY1
'       PRINT "NOUSE1", ZHUAN.NOUSE1
'       PRINT "NOUSE2", ZHUAN.NOUSE2
'       PRINT "NOUSE3", ZHUAN.NOUSE3


NEXT

LOOP
                    END

SUB BIN (file$, K, c, B1, n) STATIC
A2 = B1 * n
x1 = 0: X2 = A2
y1 = K: Y2 = y1
CALL CI(x1, y1, X2, Y2, "0")
y1 = K + 100 / c: Y2 = y1
CALL CI(x1, y1, X2, Y2, "0")
y1 = K + 20 / c: Y2 = y1
CALL CI(x1, y1, X2, Y2, "INNER")
y1 = K + 80 / c: Y2 = y1
CALL CI(x1, y1, X2, Y2, "INNER")
y1 = K + 50 / c: Y2 = y1
CALL CI(x1, y1, X2, Y2, "POWDER")
END SUB

SUB BINSUI (file$, OUTFILE$, s%) STATIC
          CLOSE #1
          CLOSE #2
          OPEN file$ FOR INPUT AS #1
          OPEN "SUI2" FOR OUTPUT AS #2
          OUTFILE$ = "SUI1"

 FOR a = 1 TO s%
           IF EOF(1) THEN EXIT SUB
           LINE INPUT #1, a$
           CALL gudel(a$, "", 1, C1$)
           c$(a) = C1$
                 IF a = s% THEN
                                   H = 0
                                   FOR b = 1 TO s%
                                   H = VAL(c$(b)) + H
                                    NEXT b
                                    PRINT #2, H / s%
                                 '   PRINT H / s%
                                 ELSE PRINT #2, 50
                               '  PRINT 50



                  END IF
     NEXT a
FOR M = 1 TO 1000000
     FOR c = 1 TO s%
           c$(c) = c$(c + 1)
     NEXT c
           IF EOF(1) THEN EXIT SUB
           LINE INPUT #1, a$
           CALL gudel(a$, "", 1, C1$)
           c$(s%) = C1$
                                   H = 0
                                   FOR b = 1 TO s%
                                   H = VAL(c$(b)) + H
                                    NEXT b

                                    PRINT #2, H / s%
                                  '  PRINT H / s%


NEXT M
END SUB

SUB CC (y1, bx, LY$, O) STATIC
aa = y1
y1 = LOG(y1) * 50 / LOG(10#) + O
' Y1
x1 = bx - .5: X2 = bx: y1 = y1: Y2 = y1


                    PRINT #2, 0
                    PRINT #2, "TEXT"
                    PRINT #2, 8
                    PRINT #2, "3"
                    PRINT #2, 10
                    PRINT #2, bx
                    PRINT #2, 20
                    PRINT #2, Y2
                    PRINT #2, 30
                    PRINT #2, 0
                    PRINT #2, 40
                    PRINT #2, .2
                    PRINT #2, 1
                    PRINT #2, aa







CALL CI(x1, y1, X2, Y2, LY$)
END SUB

SUB CI (x1, y1, X2, Y2, LA$) STATIC
'          CLOSE #2
 '        OPEN "SANG.DXF" FOR APPEND AS #2
                    PRINT #2, 0
                    PRINT #2, "LINE"
                    PRINT #2, 8
                    PRINT #2, LA$
                    PRINT #2, 10
                    PRINT #2, x1
                    PRINT #2, 20
                    PRINT #2, y1
                    PRINT #2, 30
                    PRINT #2, 0
                    PRINT #2, 11

                    PRINT #2, X2
                    PRINT #2, 21
                    PRINT #2, Y2
                    PRINT #2, 31
                    PRINT #2, 0
END SUB

SUB DAAA (file$, D, n, u, O) STATIC
          CLOSE #1
          CLOSE #2
          OPEN file$ FOR INPUT AS #1
          OPEN "SANG.DXF" FOR APPEND AS #2
PRINT
         IF EOF(1) THEN EXIT SUB
           D% = D
P = 0
           FOR b = 1 TO 100000
         IF EOF(1) THEN EXIT SUB
           LINE INPUT #1, a$
           CALL gudel(a$, "", D%, a1$)
           y1 = LOG(u) * 50 / LOG(10#) + O - 2
                    PRINT #2, 0
                    PRINT #2, "TEXT"
                    PRINT #2, 8
                    PRINT #2, "DATA"
                    PRINT #2, 10
                    PRINT #2, P
                    PRINT #2, 20
                    PRINT #2, y1
                    PRINT #2, 30
                    PRINT #2, 0
                    PRINT #2, 40
                    PRINT #2, .03
                    PRINT #2, 1
                    PRINT #2, a1$



            P = P + n
        NEXT b
END SUB

SUB DAAB (file$, N1, O, B1, n) STATIC
          CLOSE #1
          CLOSE #2
          CLOSE #4
          OPEN file$ FOR INPUT AS #1
          OPEN "SANG.DXF" FOR APPEND AS #2
          OPEN "sh.txt" FOR INPUT AS #4
                    fle$ = file$
                    CALL dell(fle$, ".@@@")
                    CALL dell(fle$, ".&&&")
         
          DO
                   
                    IF EOF(4) THEN
                    EXIT DO
                    END IF
                    LINE INPUT #4, a$
                    CALL gudel(a$, " ", 1, a1$)
                      
                       IF a1$ = fle$ THEN
                    CALL gudel(a$, " ", 2, a1$)
                         
                          fle$ = fle$ + " " + a1$
                          EXIT DO
                       END IF
          LOOP
           y1 = LOG(N1) * 50 / LOG(10#) + O
           x1 = (B1 * n) - 12

PRINT
         IF EOF(1) THEN EXIT SUB
    
                    PRINT #2, 0
                    PRINT #2, "TEXT"
                    PRINT #2, 8
                    PRINT #2, "MAME"
                    PRINT #2, 10
                    PRINT #2, x1
                    PRINT #2, 20
                    PRINT #2, y1
                    PRINT #2, 30
                    PRINT #2, 0
                    PRINT #2, 40
                    PRINT #2, .9
                    PRINT #2, 1
                    PRINT #2, fle$

END SUB

SUB dell (a$, D$) STATIC
    b = LEN(D$)
FOR H = 1 TO 80
    a = LEN(a$)
    c = INSTR(a$, D$)
IF c = 0 THEN EXIT SUB
IF c <> 0 THEN
END IF
e$ = MID$(a$, 1, (c - 1)) + MID$(a$, (c + b), (a - c - b + 1))
a$ = e$
NEXT
END SUB

SUB DR (file$, nb%, D1, D2) STATIC
          CLOSE #1
          CLOSE #2
          OPEN file$ FOR INPUT AS #1
         IF EOF(1) THEN GOTO e
           LINE INPUT #1, a$
           CALL gudel(a$, "", nb%, a1$)
D1 = VAL(a1$)

           FOR b = 1 TO 100000
         IF EOF(1) THEN GOTO e
           LINE INPUT #1, a$
           CALL gudel(a$, "", nb%, A2$)
           R1 = VAL(A2$)
           IF R1 > D1 THEN D1 = R1
        NEXT b
e:
D2 = D1
D1 = 200 - LOG(D1) * 50 / LOG(10#) + O

END SUB

SUB DR6 (file$, nb%, D1, D2) STATIC
 DIM ZHUAN AS SUJU
 CLOSE #1
 OPEN file$ FOR RANDOM AS #1 LEN = LEN(ZHUAN)
 nb1 = LOF(1) / LEN(ZHUAN)
nb1% = nb1
D1 = 100000000
FOR a = 1 TO nb1%
   GET #1, a, ZHUAN
R1 = ZHUAN.VOLUME / 1000
           IF R1 > D1 THEN D1 = R1
NEXT
D2 = D1
D1 = 200 - LOG(D1) * 50 / LOG(10#) + O
END SUB

SUB DU (file$, B1) STATIC
          CLOSE #1
          CLOSE #2
          OPEN file$ FOR INPUT AS #1
           FOR B1 = 1 TO 2000
           IF EOF(1) THEN EXIT SUB
           LINE INPUT #1, a$
        NEXT B1
END SUB

SUB FCC (file$, N1, C4, B1, O, n3, n) STATIC
         a1 = C4
             CALL CC(a1, B1 * n + .75, "OUTER", O)

           FOR b = 1 TO 100000
         a1 = C4 * n3 * b / 100 + C4
         IF a1 < N1 THEN
             CALL CC(a1, B1 * n + .75, "OUTER", O)
        ELSE EXIT SUB
        END IF
NEXT

END SUB

SUB gudel (a$, s$, i%, c$) STATIC
IF INSTR(a$, s$) = 0 THEN EXIT SUB
a$ = a$ + " "
c = 0: b = 0
FOR a = 1 TO i%
c = b
FOR t = 1 TO 200
c = c + 1
IF MID$(a$, c, 1) <> " " THEN t = 200
y$ = MID$(a$, c, 1)
NEXT t
b = c
FOR s = 1 TO 100
b = b + 1
IF MID$(a$, b, 1) = " " THEN s = 100
NEXT s
NEXT
c$ = MID$(a$, c, (b - c))
END SUB

SUB J (file$, N1, C4, h1, O, n3, n, K1) STATIC
um = 0
FOR b = 1 TO 100000
      
                  B1 = C4 * n3 * (b - 1) / 100 + C4
                  b2 = C4 * n3 * b / 100 + C4
          CLOSE #1
          CLOSE #4
          OPEN "f3" FOR INPUT AS #1
          OPEN "f6" FOR INPUT AS #4
          DO
               IF EOF(1) THEN
                   b$ = "0"
                   u = 0
                   EXIT DO
               END IF


               LINE INPUT #1, a$
               LINE INPUT #4, b$
               IF VAL(a$) >= B1 AND VAL(a$) < b2 THEN
                   u = VAL(b$) + u
                   IF um < u THEN
                    um = u
                   END IF
               END IF
          LOOP

                  a1 = C4 * n3 * b / 100 + C4
            IF a1 > N1 THEN
                

                   b = 1000000
            END IF
NEXT

回复列表 (共2个回复)

沙发

好复杂哟

板凳

改好了 

我来回复

您尚未登录,请登录后再回复。点此登录或注册