home *** CD-ROM | disk | FTP | other *** search
/ Boston 2 / boston-2.iso / DOS / PROGRAM / BASIC / QBPACKET / ARITHMET.BAS next >
BASIC Source File  |  1993-12-01  |  2KB  |  96 lines

  1. DECLARE SUB Add (NoNum)
  2. DECLARE SUB Subtract ()
  3. DECLARE SUB Multiply ()
  4. DECLARE SUB Divide ()
  5.  
  6. DIM SHARED Num(100)
  7. DO
  8.    CLS
  9.    COLOR 6
  10.    LOCATE 1, 38
  11.    PRINT "MENU"
  12.    COLOR 2
  13.    PRINT
  14.    PRINT "1. Add"
  15.    PRINT "2. Subtract"
  16.    PRINT "3. Multiply"
  17.    PRINT "4. Divide"
  18.    PRINT "5. ";
  19.    COLOR 20
  20.    PRINT "EXIT"
  21.    PRINT
  22.    COLOR 3
  23.    PRINT TAB(30); "Your choice (1-5)? ";
  24.    LINE INPUT C$
  25.    C = VAL(C$)
  26.    COLOR 5
  27.    SELECT CASE C
  28.       CASE 1
  29.          DO UNTIL NoNum > 1 AND NoNum < 100
  30.             INPUT "How many numbers do you want to add together"; NoNum
  31.          LOOP
  32.          FOR I = 1 TO NoNum
  33.             PRINT "Number"; I; "= ";
  34.             INPUT Num(I)
  35.          NEXT I
  36.          Add NoNum
  37.       CASE 2
  38.          INPUT "Number 1 = "; Num(1)
  39.          INPUT "Number 2 = "; Num(2)
  40.          Subtract
  41.       CASE 3
  42.          INPUT "Number 1 = "; Num(1)
  43.          INPUT "Number 2 = "; Num(2)
  44.          Multiply
  45.       CASE 4
  46.          INPUT "Number 1 = "; Num(1)
  47.          INPUT "Number 2 = "; Num(2)
  48.          Divide
  49.       CASE 5
  50.          INPUT "Are you SURE (y/n)"; Sure$
  51.          IF LEFT$(UCASE$(Sure$), 1) = "Y" THEN EXIT DO ELSE GOTO LoopStatement
  52.       CASE ELSE
  53.          PRINT "Bad choice.  Try again."
  54.          SLEEP 2
  55.          GOTO LoopStatement
  56.    END SELECT
  57. LoopStatement:
  58. LOOP
  59. END
  60.  
  61. SUB Add (NoNum)
  62.    SUM = 0
  63.    FOR I = 1 TO NoNum
  64.       SUM = SUM + Num(I)
  65.    NEXT I
  66.    FOR I = 1 TO NoNum
  67.       Num(I) = 0
  68.    NEXT I
  69.    PRINT "The sum equals"; SUM
  70.    SLEEP 5
  71. END SUB
  72.  
  73. SUB Divide
  74.    QUOTIENT = 0
  75.    QUOTIENT = Num(1) / Num(2)
  76.    QBASE = Num(1) \ Num(2)
  77.    REMAINDER = Num(1) MOD Num(2)
  78.    PRINT "The quotient is"; QUOTIENT; "or"; QBASE; "with a remainder of"; REMAINDER
  79.    SLEEP 5
  80. END SUB
  81.  
  82. SUB Multiply
  83.    PRODUCT = 0
  84.    PRODUCT = Num(1) * Num(2)
  85.    PRINT "The product is"; PRODUCT
  86.    SLEEP 5
  87. END SUB
  88.  
  89. SUB Subtract
  90.    DIFFERENCE = 0
  91.    DIFFERENCE = Num(1) - Num(2)
  92.    PRINT "The difference is"; DIFFERENCE
  93.    SLEEP 5
  94. END SUB
  95.  
  96.