home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / basic / baswiz18.zip / CALC.BAS < prev    next >
BASIC Source File  |  1992-08-16  |  2KB  |  60 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 SUB Evaluate (Expression$, Result!, ErrCode%)
  10.  
  11.    DEFINT A-Z
  12.  
  13.    Expr$ = COMMAND$
  14.  
  15.    Evaluate Expr$, Result!, ErrCode
  16.  
  17.    SELECT CASE ErrCode
  18.       CASE 0
  19.          PRINT Expr$; " =";
  20.          IF ABS(Result!) = Result! THEN
  21.             PRINT Result!
  22.          ELSE
  23.             PRINT " "; Result!
  24.          END IF
  25.       CASE 1
  26.          PRINT "Argument expected"
  27.       CASE 2
  28.          PRINT "Missing number"
  29.       CASE 3
  30.          PRINT "Unknown function"
  31.       CASE 4
  32.          PRINT "Unbalanced parentheses"
  33.       CASE 8
  34.          PRINT "CALC  Copyright (c) 1990-1992  Thomas G. Hanlin III"
  35.          PRINT
  36.          PRINT "Syntax:"
  37.          PRINT "   CALC expression"
  38.          PRINT
  39.          PRINT "Expressions may use the following operators:"
  40.          PRINT "   +      add"
  41.          PRINT "   /      divide"
  42.          PRINT "   *      multiply"
  43.          PRINT "   -      subtract"
  44.          PRINT "   ^      raise to a power (** also works)"
  45.          PRINT
  46.          PRINT "A number of functions are also provided:"
  47.          PRINT "   ABS    absolute value         INT    integer"
  48.          PRINT "   ACOS   inverse cosine         LOG    natural log"
  49.          PRINT "   ASIN   inverse sine           PI     3.141593"
  50.          PRINT "   ATAN   inverse tangent        SIN    sine"
  51.          PRINT "   COS    cosine                 SQR    square root"
  52.          PRINT "   FRAC   fraction               TAN    tangent"
  53.          PRINT
  54.          PRINT "Trig functions expect angles in radians."
  55.       CASE 9
  56.          PRINT "Division by zero"
  57.       CASE ELSE
  58.          PRINT "Error"
  59.    END SELECT
  60.