home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / basic / baswiz18.zip / BW$BAS.ZIP / BCDSUB.BAS < prev    next >
BASIC Source File  |  1992-08-29  |  1KB  |  43 lines

  1. '   +----------------------------------------------------------------------+
  2. '   |                                                                      |
  3. '   |        BASWIZ  Copyright (c) 1990-1992  Thomas G. Hanlin III         |
  4. '   |                                                                      |
  5. '   |                      The BASIC Wizard's Library                      |
  6. '   |                                                                      |
  7. '   +----------------------------------------------------------------------+
  8.  
  9.    DECLARE FUNCTION Complement$ (Nr AS STRING)
  10.    DECLARE SUB BCDAdd1 (N1 AS STRING, N2 AS STRING)
  11.    DECLARE SUB BCDSub1 (Nr AS STRING)
  12.  
  13.    DEFINT A-Z
  14.  
  15. FUNCTION BCDSub$ (Nr1 AS STRING, Nr2 AS STRING)
  16.    Sign1$ = LEFT$(Nr1, 1)
  17.    Sign2$ = LEFT$(Nr2, 1)
  18.    N1$ = MID$(Nr1, 2)
  19.    N2$ = MID$(Nr2, 2)
  20.    IF Sign1$ = Sign2$ THEN
  21.       BCDAdd1 N1$, Complement$(N2$)
  22.       IF ASC(LEFT$(N1$, 1)) = 9 THEN
  23.          IF Sign1$ = "-" THEN
  24.             N1$ = " " + Complement$(N1$)
  25.          ELSE
  26.             N1$ = "-" + Complement$(N1$)
  27.          END IF
  28.       ELSE
  29.          N1$ = Sign1$ + N1$
  30.       END IF
  31.       BCDSub$ = N1$
  32.    ELSE
  33.       BCDAdd1 N1$, N2$
  34.       BCDSub$ = Sign1$ + N1$
  35.    END IF
  36. END FUNCTION
  37.  
  38. FUNCTION Complement$ (Nr AS STRING)
  39.    St$ = Nr
  40.    BCDSub1 St$
  41.    Complement$ = St$
  42. END FUNCTION
  43.