home *** CD-ROM | disk | FTP | other *** search
/ Lion Share / lionsharecd.iso / dos_misc / qcalc113.zip / QCALC.DOC < prev    next >
Text File  |  1991-10-30  |  50KB  |  1,635 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.                      ╒═════════════════════════════════════════╕
  22.                      │ ╓──╖ ╓──╖ ╓──╖ ╖   ╓──╖                 │
  23.                      │ ║  ║ ║    ║──╢ ║   ║      Version 1.22  │
  24.                      │ ║ ╖║ ║    ║  ║ ║   ║      ─══════════─  │
  25.                      │ ╙─╫╜ ╙──╜ ╙  ╜ ╙─╜ ╙──╜                 │
  26.                      │   ╙       The Quick Calculator          │
  27.                      ╘═════════════════════════════════════════╛
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.                                   Copyright (c) 1991
  37.  
  38.                                       John Newlin
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.                                   66 Birchwood Drive
  47.                                  Millington, NJ 07946
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.               "I just did it because I hate the system so much." - Dave
  56.  
  57.  
  58.                QUICK INTRODUCTION
  59.                ------------------
  60.  
  61.  
  62.           There  you are by your  computer, your friends  are watching, and
  63.           you're doing your gosh darndest to  impress them.  You go through
  64.           all your games, show off your Sound  Blaster, bring up the Sports
  65.           Illustrated  Swimsuit Issue in Super VGA,  and to top it off, you
  66.           call up Compuserve  and download  a program you  don't even  want
  67.           just to show you could do it.  And then some guy in the back asks
  68.           you for  the square root  of two.   How embarrassing.   Well, you
  69.           could load up GWbasic and putz around there, or wait for Lotus to
  70.           load  and take a  couple minutes dropping numbers  in cells.  But
  71.           you know, what  would really impress this guy the  most is if you
  72.           could give him the answer quickly.
  73.  
  74.  
  75.                           "Were trapped!  Like rats!" - T.J.
  76.  
  77.  
  78.                WHAT IS QCALC?
  79.                --------------
  80.  
  81.  
  82.           QCALC is a command-line calculator.  That is, all the information
  83.           you  will ever need to give it, you can type on the command line,
  84.           right after the program name.   It handles numbers with 15  digit
  85.           precision, and can print the answer nearly any way you want.  You
  86.           can calculate  several  expressions  all  at once,  on  the  same
  87.           command line.   You can assign  the answer of an  expression to a
  88.           variable, and reuse  that variable in the expressions that follow
  89.           on the  command line.   QCALC  has several  variables (constants)
  90.           predefined  for  your  use,  as well  as  over  60 trigonometric,
  91.           financial,  conditional, and  logical  functions to  aid in  your
  92.           calculations.
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.           _________________________________________________________________
  108.               Quick-Calculator -- Copyright (c) 1991 John Newlin   -- Page 2
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.                    "I think I live in the fourth dimension." - Sam
  117.  
  118.  
  119.                HOW TO USE QCALC
  120.                ----------------
  121.  
  122.           Four things  (arguments-types) may  be found  on a command  line.
  123.           These  four things  may occur  in  any order.   A  space must  be
  124.           between each argument.  The argument types are:
  125.  
  126.           Expressions:     An  expression  is   what  it's  all   about;  A
  127.           mathematical  "formula" for QCALC to solve.  An expression may be
  128.           assigned to a variable,  in which case the expression  will begin
  129.           with  a  variable  name, and  a  colon.   5*5  is  an expression.
  130.           log(5/pi)^2  is  also  an   expression.    my_var:1.6%.45  is  an
  131.           expression being assigned to a variable.
  132.            
  133.           Switches:   Any  parameter starting  with a  forward slash  (/). 
  134.           Switches  modify  the  default  usage of  QCALC,  affecting  such
  135.           elements as  precision, variables,  and the specifics  of output.
  136.           /f is a switch.   /oo is also a  switch.  /oof are two  switches,
  137.           combined into one argument.
  138.  
  139.           Script Expansion:  Any parameter starting with an at sign (@) and
  140.           followed by a filename (with or without a path).   The file named
  141.           will be read  by QCALC, and any data contained  in that file will
  142.           be added to the  command line.  @bob is a script expansion of the
  143.           file "bob".  @c:\ted.qc is another script expansion.
  144.  
  145.           Input Prompting:   And  parameter beginnging with  an exclamation
  146.           mark  (!) and followed by  a variable name,  pre-existing or yet-
  147.           undefined.  QCALC  will prompt the user  for the contents of  the
  148.           variable before  continuing.   !frank prompts for  an expression,
  149.           this     expression    is    placed    in    variable    "frank".
  150.           !I_am_10_years_old is another prompt instruction.
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.           _________________________________________________________________
  169.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 3
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.             "I was trying to astrally project, but I got it wrong." - Bill
  178.  
  179.  
  180.                A CLOSE LOOK AT EXPRESSIONS
  181.                ---------------------------
  182.  
  183.           QCALC  understands  six  basic  operator types,  plus  some  more
  184.           advanced   operators.     The  following   shows  six   different
  185.           expressions, each employing a different operator:
  186.  
  187.                QCALC /oo 6+3 6-3 6*3 6/3 6%3 6^3
  188.  
  189.           Ignore  the /oo  at this time,  it's purpose  is to  clean up the
  190.           output.  The result you will see is:
  191.  
  192.                9 3 18 2 0 216
  193.  
  194.           Expressions can be parenthesis nested; you can have any amount of
  195.           parentheses  in  the  expression.    For  example,  this  example
  196.           retrieves  the square  root of  25  (which is  5), adds  1 to  it
  197.           (making 6), and divides the result by 2 (the final answer is 3).
  198.  
  199.                QCALC (sqr((2.5*2)*5)+1)/2
  200.  
  201.           And QCALC responds ...
  202.  
  203.                QCALC -> (SQR((2.5*2)*5)+1)/2 = 3
  204.  
  205.           All  these parentheses  may not  be necessary, however.   Certain
  206.           operators have a  higher precedence than others.  Take a look see
  207.           at the operator descriptions that follow.
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.           _________________________________________________________________
  230.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 4
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.                            "She's my woman, she's my woman,
  239.                          she's my sweet hot dog woman." - Ben
  240.  
  241.  
  242.                OPERATORS AND PRECEDENCE
  243.                ------------------------
  244.  
  245.           Parenthesis  have the  highest precendence.   They  are evaluated
  246.           before anything else.  Parentheses may be nested for an unlimited
  247.           length  (or until  the  stack  runs  out,  which  makes  a  LARGE
  248.           expression).
  249.  
  250.           The  exponent operator (^) has the next highest precedence.  This
  251.           operator  brings the left value to the  power of the right value.
  252.           It is the operator equivalent of the function POW(x,y).
  253.  
  254.           Multiplication  (*),  division (/)  and  modulus  (%) have  equal
  255.           precedence.  This means that whichever of the three come first in
  256.           the expression (left to  right) is evaluated first.   Modulus, by
  257.           the way, computes the  remainder of a division expression.   (5%2
  258.           is 1, since 5/2 leaves a remainder of 1.)
  259.  
  260.           Addition (+)  and subtraction (-)  have equal precedence.   (Note
  261.           that the "negative sign" (-), found next to a negative number, is
  262.           not  the same as the  subtraction operator.   Sign negation takes
  263.           precedence over all operators below parentheses.)
  264.  
  265.           Greater than (> or }), less than (< or  {), equal to (=), greater
  266.           than or equal to (>= or }=), and less than or equal to (<= or {=)
  267.           are all  logical operators with equal  precedence, each resulting
  268.           with a 1  or a  0.  (True  is 1,  0 is false.)   These  operators
  269.           emulate the  functions, respectively, GT(x,y),  LT(x,y), EQ(x,y),
  270.           GOE(x,y),  and LOE(x,y).  Note that  the angle brackets (> and <)
  271.           are  equivalent to  the curly  braces ({  and }).   Due  to DOS's
  272.           inability to  handle angle brackets,  always use curly  braces on
  273.           the  command line.   They  work fine,  however, in  script files.
  274.           Also  note that  you will most  likely not  be able  to use angle
  275.           brackets, or the equal  sign, in the QCALC environment  variable,
  276.           as the  SET command does  not like  them.  There  is no  operator
  277.           equivalent to the =  sign, however.  Use the  EQ(x,y) function in
  278.           the environment variable.
  279.  
  280.           Of least precedence are logical AND (&) and logical OR  (| or $),
  281.           equivalent to functions  AND(x,y) and OR(x,y).   DOS can't handle
  282.           the | on the command  line or in an environment variable,  so the
  283.           equivalent operator $ has been provided.  You may use | in script
  284.           files, however.
  285.  
  286.  
  287.  
  288.  
  289.  
  290.           _________________________________________________________________
  291.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 5
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.                            "This is so disgusting." - Dave
  300.  
  301.  
  302.                VARIABLES
  303.                ---------
  304.  
  305.           To  use a variable in  an expression, just  substitute the number
  306.           with the name.  For example, pi is predefined as 3.14...etc.  The
  307.           following multiplies pi by 5:
  308.  
  309.                QCALC pi*5
  310.  
  311.           To define a  new variable, tack  on a variable  name and a  colon
  312.           just before  the expression.   This example  declares a  variable
  313.           named "radius", stores 5 in it,  and multiplies it by pi.   It is
  314.           identical to pi*5 above.
  315.  
  316.                QCALC radius:5 pi*radius
  317.  
  318.           QCALC allows  great flexibility in how  you assign a number  to a
  319.           variable.    The following  assigns  the  number 50  to  variable
  320.           "fifty":
  321.  
  322.                QCALC fifty:10*((2*2)+1)
  323.  
  324.           User defined  variables are not  constants; they can  be assigned
  325.           new  values later on  the command  line.   Internal (pre-defined)
  326.           constants, however, may not be changed.
  327.  
  328.           Let's say you  have an expression you  would like to  repeat, but
  329.           with different values each time.  You can tell DOS  to prompt you
  330.           for the value  of a variable by  creating it with an  exclamation
  331.           mark:
  332.  
  333.                QCALC !days hours:24 days*hours
  334.  
  335.           When executed,  QCALC will first ask  you for the value  of DAYS.
  336.           After you enter it, it will finish evaluating the expressions.
  337.           Hit F3 (ENTER) to run QCALC again and enter a new value for DAYS.
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.           _________________________________________________________________
  352.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 6
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.                       "Cockroach!!!" - A guy with a huge wrench,
  361.                             a crazy person with a plunger,
  362.                       and a madman with isopropyl and a lighter.
  363.  
  364.  
  365.                PRINT OPTIONS
  366.                -------------
  367.  
  368.           QCALC can print  results in  many different ways.   Consider  the
  369.           following command:
  370.  
  371.                QCALC /or abs(-10) /% .1 /%f 150.25*278.55
  372.  
  373.           And QCALC prints ...
  374.  
  375.                10
  376.                10%
  377.                $41,852.13
  378.  
  379.           The switch /OR turns on "result only".  In actuality, /OR is just
  380.           a shortcut switch.  It does the same work as if you had turned on
  381.           switches OQ, OX, and OE (see section SWITCHES).  The function abs
  382.           converts -10  to a  positive number,  so it prints  10.   /% puts
  383.           QCALC into percentage mode.   .1 is ten percent in this  mode, so
  384.           QCALC  prints 10%.    /%f  is  two  switches  combined  into  one
  385.           parameter.  /% tells QCALC to  turn percentage mode back OFF, and
  386.           /f to  turn financial mode ON.   This mode prints  a dollar sign,
  387.           then  the result of the expression with commas every third digit.
  388.           The number is also brought to two decimal places.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.           _________________________________________________________________
  413.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 7
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.               "What, you're going to tell me Ringo was talented?" - Rene
  422.  
  423.  
  424.                ANYTHING I SHOULD KNOW?
  425.                -----------------------
  426.  
  427.                                        -*-
  428.           An expression  should never  have a space  anywhere in it.   This
  429.           will  confuse  QCALC  into  thinking  the  space   is  where  the
  430.           expression  ends.   Only  use  spaces  to separate  switches  and
  431.           expressions from each other.
  432.                                        -*-
  433.           To save  the results of QCALC  into a file,  use DOS redirection.
  434.           At  the end  of the  command line,  append >  filename.ext, where
  435.           filename.ext is the file where you want to save the answers.  
  436.           Example:  QCALC sin(.9) > myfile.txt
  437.                                        -*-
  438.           I highly recommend using DOSKEY (bundled with MS-DOS 5.0) or 4DOS
  439.           (available  through  shareware) with  QCALC.    The command  line
  440.           editing capabilities  of these utilities make  QCALC much simpler
  441.           to use.   However, for  those who  don't use DOSKEY  or 4DOS,  an
  442.           "editor" switch will be implemented in future versions.
  443.                                        -*-
  444.           Variable  names can consist  of letters of  the alphabet, digits,
  445.           and the underscore (_) character.  They may be of any length, but
  446.           they must not begin with a digit.  
  447.                                        -*-
  448.           Occasionally, you'll  do something that will cause  QCALC to barf
  449.           out an error.  Check the section on ERRORS for a full list.  Note
  450.           that a  caret (^) attempts  to point out the  error.  Use  the /E
  451.           switch to modify the appearance of errors.
  452.                                        -*-
  453.           If  there  are some  switches you  frequently  turn on,  and some
  454.           variables  you  frequently  use, you  can  place  them  in a  DOS
  455.           environment variable.   When QCALC  is executed, it  first checks
  456.           the environment variable "QCALC"  and evaluates any arguments you
  457.           have there.  The following creates an environment variable ...
  458.  
  459.                SET QCALC=/op weeks_in_month:4 months_in_year:12 /nf
  460.  
  461.           ... To remove an environment variable, type SET QCALC= but do not
  462.           supply any data.   This particular setting creates  two variables
  463.           silently (/OP), restores  the default settings (/N), and turns on
  464.           financial mode (/F).  
  465.  
  466.           Do not put the switches  /I, /H (or /? or ?), or /L  in the QCALC
  467.           variable.   /FNORD  can be  placed there,  however.   Do  not put
  468.           either of the angle brackets (< or >) or the equal sign (=) in an
  469.           environment  variable (the  SET command  barfs on  it).   Use the
  470.           equivalents: { for <, } for >, and EQ(x,y) for x=y.
  471.                                        -*-
  472.  
  473.           _________________________________________________________________
  474.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 8
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.           You  can  store  many  switches  and  expressions  (and  variable
  483.           definitions) in  a script file, and  read in that file  by use of
  484.           the script file expansion (@) operator.  The file may contain any
  485.           number  of switches and expressions, and each can be separated by
  486.           a  space or a carraige return.    Blank lines are ignored.  Since
  487.           QCALC evaluates each argument from left to right, the contents of
  488.           the  script file are not evaluated until @filename is found.  Any
  489.           expressions before the @filename argument may not make use of any
  490.           variables created inside the script file.   The default extension
  491.           is  ".QC,"  and  if the  file  cannot  be  found  in the  current
  492.           directory,  QCALC searches the directory where QCALC.EXE resides.
  493.           The file "c:\stuff\bob.qc" contains a  variable named "bob".  The
  494.           following loads in bob, and multiplies it by five ...
  495.  
  496.                QCALC @C:\STUFF\BOB.QC BOB*5
  497.  
  498.           Script files can contain some special characters:
  499.  
  500.           A  semicolon (;)  is a  comment.   Everything from  the semicolon
  501.           until the end of the line is ignored.
  502.  
  503.           A pound sign (#) print everything from the pound sign  to the end
  504.           of the line  to the screen.  Do not place a semicolon on the same
  505.           line as a  pound sign.  (Er,  well, you can, but you  may not get
  506.           what you expect.)
  507.  
  508.           A tilde  (~) tells QCALC to  pause.  QCALC pauses  until the user
  509.           hits a key, or aborts the script by hitting the ESCAPE key.
  510.  
  511.           The input-variable character (!)  can be used in script  files to
  512.           make  them more interactive and  reusable.  Script  files will be
  513.           greatly expanded upon  in future  versions, but do  not count  on
  514.           backward  compatibility.  Note that there are only two things you
  515.           CAN'T do  in a script file;  you can't use /FNORD,  and you can't
  516.           include another script with the @filename argument.
  517.                                        -*-
  518.           If  you like a "running-tape" calculator, and have a printer, use
  519.           CONTROL-PRINTSCREEN.   This tells DOS to turn on "line printing".
  520.           When you are  done printing, hit  CTRL-PS again to  turn off  the
  521.           printer.
  522.                                        -*-
  523.           The functions QCALC employs are not heavily tested at this point,
  524.           so use them with care.  If a function seems accurate, it probably
  525.           is, but remember  they come from a variety of  sources.  About 25
  526.           are from Borland  C++'s math  library, about another  24 I  wrote
  527.           myself, and  they make calls to Borland's  functions, and another
  528.           11 are from Howard Kapustein's Turbo C library (TCHK 2.0).
  529.                                        -*-
  530.           I've just thought of a  use for the /OA  switch.  If you type  an
  531.           expression on the command  line, and then realize you  would like
  532.           to have this  expression in  a script file,  insert the  switches
  533.  
  534.           _________________________________________________________________
  535.               Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 9
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.           /FNORDOPOQOEOA to before the  expression, append "> script.qc" to
  544.           the end of the command line,  and re-execute the line.  This will
  545.           have the  effect of printing  just the expression  (variables are
  546.           ignored: /OP) and saving the expression in the file "script.qc". 
  547.           /OA turns OFF answer printing to make this  possible.  Great, eh?
  548.           Okay, a bit  of a pain,  but it's  now I can  say QCALC  features
  549.           "auto-scripting".  Heh heh.
  550.                                        -*-
  551.           Simulated functions:  If you wish to multiply two values, you use
  552.           the *  operator as  in  5*6.   However, if  the  second value  is
  553.           surrounded  by  parentheses,  multiplication  is  assumed  if  no
  554.           operator exists as in 5(6).  Using this technique, you can create
  555.           variables that appear to work as functions.  For example:
  556.  
  557.                QCALC one_tenth:.1 one_tenth(5)
  558.  
  559.           This reports .5 as  the answer, which is one-tenth of  5.  All it
  560.           is  doing, though, is multiplying one_tenth (.1) by the amount in
  561.           the parentheses.   The constant "rad" can  appear to work  as the
  562.           function "torad":
  563.  
  564.                QCALC torad(90) rad(90)
  565.  
  566.           These two  answers will be identical.  However, do realize that a
  567.           simulated function does not report errors as a real function does
  568.           -- don't forget that it IS a variable.
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.           _________________________________________________________________
  596.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 10
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.                             "I don't think so." - Angeler
  605.  
  606.  
  607.                REGISTRATION, OTHER BORING TOPICS
  608.                ---------------------------------
  609.  
  610.           Read the  file REGISTER.TXT  for full information  on registering
  611.           this version of  QCALC.  Trust me, it's cheap.   And if you don't
  612.           use  it often, I'm not  asking you to delete  your copy.  Use it.
  613.           If  it ever becomes handy  enough to justify  the cost, register.
  614.           This applies only to home use, however.  Please do not install an
  615.           unregistered copy  of QCALC  on a  business machine  for anything
  616.           other  than a test drive.  Registration is mandatory for business
  617.           use.
  618.  
  619.           I wrote a story  about an old folks home that gets  a shipment of
  620.           bum radioactive peas  and all  the senile old  people get  mutant
  621.           powers.  The teacher didn't  like it, however.  I thought  it was
  622.           pretty  funny, but  he said the  main character  wasn't likeable.
  623.           You're not likeable, I said.  No, actually I didn't, but I should
  624.           have...  Oh, I'm sorry, am I boring you?
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.           _________________________________________________________________
  657.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 11
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.                               "You ever wonder?" - Mike
  666.  
  667.  
  668.                A WORD ABOUT CONSTANTS AND FUNCTIONS
  669.                ------------------------------------
  670.  
  671.           Any  functions that  take an  angle as a  parameter work  only in
  672.           radians.   To convert degrees to radians, use the function torad,
  673.           or multiply  degrees by  rad (pi/180).   Remember,  do NOT  put a
  674.           space  between the function name and the parentheses, nor a space
  675.           after  the numbers or commas.   Or anywhere else in an expression
  676.           for that matter.  
  677.  
  678.           Any number that is nonzero is "TRUE".  Any number that is zero is
  679.           "FALSE".  This does NOT apply  to functions that require a value.
  680.           For example, if variable barf equals 5, the expression EQ(barf,5)
  681.           would  return 1  (TRUE):   However, the  expression EQ(barf,TRUE)
  682.           would not  return TRUE.   EQ  compares  values, not  logic.   For
  683.           logical equality, use AND.  AND(barf,TRUE) will return TRUE.
  684.  
  685.           Note that  some functions have  operator equivalents that  may or
  686.           may  not be desirable.  (In the  above example, AND is operator &
  687.           and EQ is operator =.)
  688.  
  689.           Constants  may  not be  changed  --  that's  why  they're  called
  690.           constants.  Don't let that stop  you from changing your own user-
  691.           defined variables, though.
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.           _________________________________________________________________
  718.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 12
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.                       "That's an awful lot of garbage." - Jason
  727.  
  728.  
  729.                LIST OF CONSTANTS
  730.                -----------------
  731.  
  732.           PI
  733.           The   ratio   of  circumference   to   diameter.     Defined   as
  734.           3.14159265358979323846.
  735.  
  736.           E 
  737.           The    base    of    natural    logarithms.         Defined    as
  738.           2.71828182845904523536.
  739.  
  740.           RAD
  741.           Converts  degrees to radians.  If x  is in degrees, multiply x by
  742.           rad and you will have x radians.  Defined as pi/180.
  743.  
  744.           DEG
  745.           Converts radians to  degrees.  If y is in  radians, multiply y by
  746.           deg and you will have y in degrees.  Defined as 1/RAD.   However,
  747.           an alternate (and more accurate) approach is to divide y by RAD.
  748.  
  749.           TRUE
  750.           Logical  true.  Defined as 1, however  any number that is nonzero
  751.           is "true".
  752.  
  753.           FALSE
  754.           Logical false.  Defined as 0.
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.           _________________________________________________________________
  779.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 13
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.                               "Oh, man!  Oh, man." - Sam
  788.  
  789.  
  790.                LIST OF FUNCTIONS
  791.                -----------------
  792.  
  793.           SIN(X)
  794.           Sine.
  795.  
  796.           COS(X)
  797.           Cosine.
  798.  
  799.           TAN(X)
  800.           Tangent.  sin(x)/cos(x).
  801.  
  802.           SEC(X)
  803.           Secant.  1/cos(x).
  804.  
  805.           COSEC(X)
  806.           Cosecant.  1/sin(x).
  807.  
  808.           COTAN(X)
  809.           Cotangent.  1/tan(x).
  810.  
  811.           ASIN(X)
  812.           Inverse (arc) sine.  x must be between -1 and 1.
  813.  
  814.           ACOS(X)
  815.           Inverse (arc) cosine.  x must be between -1 and 1.
  816.  
  817.           ATAN(X)
  818.           Inverse (arc) tangent.
  819.  
  820.           ASEC(X)
  821.           Inverse (arc) secant.
  822.  
  823.           ACOSEC(X)
  824.           Inverse (arc) cosecant.
  825.  
  826.           ACOTAN(X)
  827.           Inverse (arc) cotangent.
  828.  
  829.           SINH(X)
  830.           Hyperbolic sine.
  831.  
  832.           COSH(X)
  833.           Hyperbolic cosine.
  834.  
  835.           TANH(X)
  836.           Hyperbolic tangent.
  837.  
  838.  
  839.           _________________________________________________________________
  840.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 14
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.           SECH(X)
  849.           Hyperbolic secant.
  850.  
  851.           COSECH(X)
  852.           Hyperbolic cosecant.
  853.  
  854.           COTANH(X)
  855.           Hyperbolic cotangent.
  856.  
  857.           ASINH(X)
  858.           Inverse (arc) hyperbolic sine.
  859.  
  860.           ACOSH(X)
  861.           Inverse (arc) hyperbolic cosine.
  862.  
  863.           ATANH(X)
  864.           Inverse (arc) hyperbolic tangent.
  865.  
  866.           ASECH(X)
  867.           Inverse (arc) hyperbolic secant.
  868.  
  869.           ACOSECH(X)
  870.           Inverse (arc) hyperbolic cosecant.
  871.  
  872.           ACOTANH(X)
  873.           Inverse (arc) hyperbolic cotangent.
  874.  
  875.           LOG(X)
  876.           Natural logarithm.  x must be greater than 0.
  877.  
  878.           LOG10(X)
  879.           Natural logarithm, base 10.  x must be greater than 0.
  880.  
  881.           POW(x,y)
  882.           Exponentation  function x  to  the power  of  y.   Equivalent  to
  883.           operator expression x^y.
  884.  
  885.           EXP(X)
  886.           Exponential function e to the xth power.
  887.  
  888.           HYPOT(X,X)
  889.           Hypotenuse of a right triangle.
  890.  
  891.           TORAD(X)
  892.           Converts x from degrees to radians.  (See rad.)
  893.  
  894.           TODEG(X)
  895.           Converts x from radians to degrees.  (See deg.)
  896.  
  897.  
  898.  
  899.  
  900.           _________________________________________________________________
  901.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 15
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.           SIGN(X)
  910.           The  sign of  x.   If x is  positive, sign  returns 1.   If  x is
  911.           negative, sign returns -1.  If x is zero, sign returns 0.
  912.  
  913.           SQR(X)
  914.           Square root of x.  x must not be negative.
  915.  
  916.           RND(X)
  917.           Random integer from 1 to x.  x must be between 1 and 65535.
  918.  
  919.           ABS(X)
  920.           Absolute value of x.  Converts x to a positive number.
  921.  
  922.           MIN(X,Y)
  923.           Returns whichever is smaller.  Identical to IF(LT(x,y),x,y).
  924.  
  925.           MAX(X,Y)
  926.           Returns whichever is larger.  Identical to IF(GT(x,y)x,y).
  927.  
  928.           SLN(Cost,Salvage,Life) 
  929.           Straight Line depreciation. 
  930.  
  931.           SYD(Cost,Salvage,Life,Period) 
  932.           Sum Year Digits depreciation.
  933.  
  934.           DDB(Cost,Life,Period) 
  935.           Double Declining Balance depreciation.
  936.  
  937.           ASLN(Cost,Salvage,Life) 
  938.           Accumulated Straight Line depreciation.
  939.  
  940.           ASYD(Cost,Salvage,Life,Period) 
  941.           Accumulated Sum Year Digits depreciation.
  942.  
  943.           ADDB(Cost,Life,Period) 
  944.           Accumulated Double Declining Balance depreciation.
  945.  
  946.           PMT(Principal,Interest,Term) 
  947.           Periodic payment required to fully amortize a principal.
  948.  
  949.           FV(Payment,Interest,Periods)
  950.           Future Value of a single amount.
  951.  
  952.           FVA(Payment,Interest,Periods)
  953.           Future Value of a annuity.
  954.  
  955.           PV(Payment,Interest,Periods)
  956.           Present Value of a single amount.
  957.  
  958.  
  959.  
  960.  
  961.           _________________________________________________________________
  962.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 16
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.           PVA(Payment,Interest,Periods)
  971.           Present Value of an annuity.
  972.  
  973.           AND(x,y)
  974.           Logical  And.   Returns  TRUE if  both  x and  y  are both  TRUE.
  975.           Otherwise,  it   returns  FALSE.    Identical   to  the  operator
  976.           expression x&y.
  977.  
  978.           OR(x,y)
  979.           Logical Inclusive  Or.  Returns TRUE  if either x or  y are TRUE.
  980.           Only returns FALSE if x  and y are both FALSE.  Identical  to the
  981.           operator expressions x|y and x$y.
  982.  
  983.           XOR(x,y)
  984.           Logical Exclusive Or.  Returns TRUE if either x or y is TRUE, but
  985.           not  both.   Only returns  FALSE if  both are  TRUE, or  both are
  986.           FALSE.  XOR has no operator equivalent.
  987.  
  988.           NEG(x)
  989.           Logical Negation.  Returns TRUE if  x is FALSE.  Returns FALSE if
  990.           x is TRUE.  Negate has no operator equivalent.
  991.  
  992.           NOT(x)
  993.           Identical to NEG.  See NEG.
  994.  
  995.           IF(x,a,b)
  996.           Conditional Answer.   If x is  TRUE, the value of  a is returned.
  997.           Otherwise, the value of b is returned.  
  998.  
  999.           EQ(x,y)
  1000.           Equal To.   Returns TRUE if x  is equal to y.   Otherwise returns
  1001.           FALSE.  Equivalent to operator expression x=y.
  1002.  
  1003.           GT(x,y)
  1004.           Greater Than.  Returns TRUE if x is greater, but not equal, to y.
  1005.           Otherwise returns FALSE.   Equivalent to operator expressions x>y
  1006.           and x}y.
  1007.  
  1008.           LT(x,y)
  1009.           Less  Than.  Returns TRUE if x is less than, but not equal, to y.
  1010.           Otherwise returns FALSE.   Equivalent to operator expressions x<y
  1011.           and x{y.
  1012.  
  1013.           GOE(x,y)
  1014.           Greater Than Or Equal To.   Returns TRUE if x is greater than  or
  1015.           equal  to   y.     Otherwise   returns  FALSE.     Identical   to
  1016.           OR(GT(x,y),EQ(x,y)).   Equivalent  to operator  expressions x>=y,
  1017.           and x}=y.
  1018.  
  1019.  
  1020.  
  1021.  
  1022.           _________________________________________________________________
  1023.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 17
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.           LOE(x,y)
  1032.           Less Than Or Equal To.  Returns  TRUE if x is less than or  equal
  1033.           to    y.       Otherwise   returns    FALSE.       Identical   to
  1034.           OR(LT(x,y),EQ(x,y)).   Equivalent  to operator  expressions x<=y,
  1035.           and x{=y.
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.           _________________________________________________________________
  1084.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 18
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.                    "Rastafarians?  Hey, I know Rastas, man." - Seth
  1093.  
  1094.  
  1095.                LIST OF ERRORS
  1096.                --------------
  1097.  
  1098.           SYNTAX ERROR!
  1099.           Any  general  bewilderment.   Illegal  characters  can produce  a
  1100.           syntax error, but  they will produce a bad operator  error if the
  1101.           expression  is  expecting an  operator at  that  point.   Using a
  1102.           variable  as  a function,  or vice  versa,  will create  a syntax
  1103.           error. 
  1104.  
  1105.           MISMATCHED PARENTHESES!
  1106.           The  expression does not have the same amount of left parenthesis
  1107.           as  it  does right  parenthesis,  or  QCALC  encounters  a  right
  1108.           parenthesis before it's matching left.  Example:  QCALC )(.
  1109.  
  1110.           OVERFLOW ERROR!
  1111.           Somewhere along the calculation of the expression, the number got
  1112.           waaaay  too  big.   An  overflow  error will  also  be  caused by
  1113.           "underflow" (a number got way too small).
  1114.  
  1115.           DIVISION BY ZERO ERROR!
  1116.           The  right value of a divide or  modulus expression is zero.  You
  1117.           cannot  divide by  zero,  it's  against the  law.    You can  get
  1118.           arrested.  Example:  5/0 is illegal.
  1119.  
  1120.           DOMAIN ERROR!
  1121.           You have called a function  but given illegal values to it.   For
  1122.           example, ASIN(x)  requires x to  be between  -1 and 1.   ASIN(10)
  1123.           would produce a  domain error.  A  domain error is also  produced
  1124.           when a function call  causes a total loss of  significant digits.
  1125.           For example:  sin(10e70).
  1126.  
  1127.           UNKNOWN SYMBOL!
  1128.           The symbol name  pointed to does not exist as  either a variable,
  1129.           or  a function.   You haver either misspelled  the symbol, or you
  1130.           have a slight case of brain damage.
  1131.  
  1132.           BAD OPERATOR!
  1133.           Syntax error.  The expression contains an illegal character, when
  1134.           it's looking for an operator.
  1135.  
  1136.           IMPROPER NUMBER OF PARAMETERS!
  1137.           You have  called a function, but have either supplied it with too
  1138.           many parameters, or not enough.  Look up the function with the /L
  1139.           switch for number of parameters;  QCALC /L.
  1140.  
  1141.  
  1142.  
  1143.  
  1144.           _________________________________________________________________
  1145.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 19
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.           CONTROL-C ENCOUNTERED!  ABORT MISSION!  ABORT MISSION!
  1154.           You  hit   CONTROL-C  or  CONTROL-BREAK   before  QCALC  finished
  1155.           calculations.  Jerk.
  1156.  
  1157.           WARNING:  NULL STATEMENT REACHED PREMATURELY!
  1158.           I doubt  you'll see  this  error.   It's an  old error  detection
  1159.           scheme  used in the earliest  versions of QCALC.   However, if it
  1160.           does occur,  please notify the  author (me) of  the circumstances
  1161.           under which it happened.  Then hear me faint.
  1162.  
  1163.           ALERT AUTHOR:  BUG!  RAID!  BLACK FLAG!  HELP!
  1164.           This is a bug.   This bug means death.  It  represents conditions
  1165.           that I, in my small  imagination, thought couldn't occur.   If it
  1166.           does occur, alert the author (me) and send him (me) a copy of the
  1167.           command line you used that produced the error.
  1168.  
  1169.           NO NAME GIVEN!
  1170.           You began an expression with  a colon.  QCALC thinks you  want to
  1171.           assign the expression to a variable.
  1172.  
  1173.           BAD VARIABLE DEFINITION!
  1174.           A colon, which  dilineates a  variable from  the expression,  was
  1175.           found in a location that made QCALC wonder who put you in charge.
  1176.  
  1177.           EMPTY EXPRESSION!
  1178.           You begin the expression with a  variable name and an equal sign,
  1179.           but that's it.  QCALC can't define a new variable unless it has a
  1180.           value to give it.
  1181.  
  1182.           SYMBOL IS IN USE!
  1183.           The expression is  attempting to  define a variable  with a  name
  1184.           that is already  in use.  The  name is being used by  a function.
  1185.           See the next error.
  1186.  
  1187.           SYMBOL IS A CONSTANT!
  1188.           The expression is  attempting to  define a variable  with a  name
  1189.           that is already in  use.  The  name is being  used by a  constant
  1190.           (pre-defined internal variable).  See the previous error.
  1191.  
  1192.           ABNORMAL PROGRAM TERMINATION
  1193.           This is  a major  error that  QCALC has failed  to trap.   Again,
  1194.           please  send to  the author  (again, me)  the description  of the
  1195.           error, and the full command line under which this error occurred.
  1196.  
  1197.           FATAL:  CAN'T LOAD xxx!
  1198.           The  script you are trying to expand with the @filename parameter
  1199.           cannot be loaded for  some reason.  Either  it doesn't exist,  or
  1200.           there is a disk error.
  1201.  
  1202.  
  1203.  
  1204.  
  1205.           _________________________________________________________________
  1206.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 20
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.                        "Come on, John, let's get drunk." - Ben
  1215.  
  1216.  
  1217.                A WORD ABOUT SWITCHES
  1218.                ---------------------
  1219.  
  1220.           QCALC's  switches  are  not  case  sensitive.    Switches  marked
  1221.           (TOGGLE)  in the  following list  can  be turned  on  and off  by
  1222.           selecting the switch again.  For example, /$ prints a dollar sign
  1223.           before the number. The command ...
  1224.  
  1225.                QCALC /$ 20 /$ 20
  1226.  
  1227.           ... prints  two numbers.  The  first number will have  a $ before
  1228.           it, and the second will not, since the option was toggled off.
  1229.  
  1230.           Several  switches  can  be  combined into  one  parameter.    For
  1231.           example, the /$ and /C switches can be turned on by /$C.
  1232.  
  1233.           Switches marked  (SINGLE) in  the following list  are information
  1234.           switches  -- they override and ignore all other switches to print
  1235.           a message, give help, etc.  For example, the command ...
  1236.  
  1237.                QCALC 5*5 /?
  1238.  
  1239.           ... brings  up the help screen.  It does  NOT print the result of
  1240.           the expression 5*5, because /? is marked  (SINGLE), and overrides
  1241.           normal switches.  (SINGLE)  switches can be used anywhere  on the
  1242.           command line, but only the first (SINGLE) switch encountered will
  1243.           be recognized -- all other arguments will be ignored.  (Get it?)
  1244.  
  1245.           Some switches take arguments.   For example, /P is  the precision
  1246.           switch.  It expects a number  (NUM) after the  switch (ie, /P10).
  1247.           /E  is the  error switch.   It expects  a letter  (LET) after the
  1248.           switch (ie,  /EV).  If a switch requires a certain type argument,
  1249.           and  that type  is not  given, or  no argument  is given  at all,
  1250.           unexpected errors may occur.  If in doubt of how  a switch works,
  1251.           do not combine it with  another switch in the same parameter  (ie
  1252.           /P10$  combines  /P  and   /$  together)  --  combining  switches
  1253.           improperly can confuse QCALC and make it cuckoo.
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.           _________________________________________________________________
  1267.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 21
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.                                    "Ayep." - Ocean
  1276.  
  1277.  
  1278.                LIST OF SWITCHES
  1279.                ----------------
  1280.  
  1281.           SWITCH /I:  Gives information on the current version of QCALC. 
  1282.  
  1283.           (SINGLE)  Prints a  short text description about this  version of
  1284.           QCALC, and information regarding registration (blah).
  1285.  
  1286.           Usage:   QCALC /I
  1287.  
  1288.  
  1289.           SWITCH /L:  Lists mathematical functions and constants.
  1290.  
  1291.           (SINGLE)   Prints  a list  of mathematical  functions that  QCALC
  1292.           understands,  and any  predefined  constants.   Also lists  legal
  1293.           operators.
  1294.  
  1295.           Usage:   QCALC /L
  1296.  
  1297.  
  1298.           SWITCH /H:  Help screen.
  1299.  
  1300.           (SINGLE)    Shows QCALC's  usage  and  available switches.    The
  1301.           following are equivalent usages of the /H switch:
  1302.  
  1303.                QCALC /H
  1304.                QCALC /?
  1305.                QCALC ?
  1306.  
  1307.  
  1308.           SWITCH /%:  Prints number as a percentage.
  1309.  
  1310.           (TOGGLE)  Each number is converted to a percentage (multiplied by
  1311.           100), and printed with a percent sign (%) after it.
  1312.  
  1313.           Example:    QCALC /% .65
  1314.           Result:     QCALC -> .65 = 65%
  1315.  
  1316.  
  1317.           SWITCH /$:  Puts a dollar sign before each number.
  1318.  
  1319.           (TOGGLE)  Each answer is printed after a dollar sign ($).
  1320.  
  1321.           Example:    QCALC /$ 5*5
  1322.           Result:     QCALC -> 5*5 = $25
  1323.  
  1324.  
  1325.  
  1326.  
  1327.           _________________________________________________________________
  1328.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 22
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.           SWITCH /C:  Delineates each number with commas every third digit.
  1337.  
  1338.           (TOGGLE)  Prints numbers with commas.
  1339.  
  1340.           Example:    QCALC /C 1234
  1341.           Result:     QCALC -> 1234 = 1,234
  1342.  
  1343.  
  1344.           SWITCH /P:  Changes the precision.
  1345.  
  1346.           (NUM)   Requires an argument from 1 to 15.  Final answers will be
  1347.           rounded up or down to the specified precision.
  1348.  
  1349.           Example:    QCALC /P5 1234.56
  1350.           Result:     QCALC -> 1234.56 = 1234.6
  1351.  
  1352.  
  1353.           SWITCH /D:  Changes the number of places after the decimal point.
  1354.  
  1355.           (NUMBER)  Requires an argument from 0 to 15.  /D15 is the default
  1356.           amount of digits to be printed after the decimal point.  /D0 will
  1357.           always  print numbers  whole, and  with no  decimal point.   Zero
  1358.           padding is controlled by the "minimum digits" argument, as below.
  1359.           Any fractional  part of  a number beyond  the specified  argument
  1360.           will be truncated.
  1361.  
  1362.            =OR=
  1363.  
  1364.           (TOGGLE-LETTER)    Requires  the   letter  'M'  as  an  argument.
  1365.           "Minimum digits" defaults  to ON.  When minimum digits is on, any
  1366.           fractional part smaller than  the specified digit limit  will NOT
  1367.           have  trailing  zeroes, and  if there  is  no fractional  part, a
  1368.           decimal point will not  be printed. With minimum digits  off, all
  1369.           numbers  with a specified digit limit greater than zero WILL have
  1370.           a decimal point, and will be zero padded up until the limit.  
  1371.  
  1372.           Example:  QCALC /v a:123.123 /D2 a /D0 a /DMD4 a /DM 123.12345
  1373.           Result:   QCALC -> A = 123.12
  1374.                     QCALC -> A = 123
  1375.                     QCALC -> A = 123.1230
  1376.                     QCALC -> 123.12345 = 123.1234
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.           _________________________________________________________________
  1389.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 23
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.           SWITCH /F:  Prints answers financially.
  1398.  
  1399.           (SEMI-TOGGLE)  Prints answers with a dollar sign, commas, and two
  1400.           digits  after the  decimal point,  trailing zeroes  if necessary.
  1401.           Financial  mode  is  considered  "ON"  if  ALL  of the  following
  1402.           switches  are  set:   /$CD2DM.   If  any  of  these settings  are
  1403.           changed, financial mode is  toggled "OFF".  If financial  mode is
  1404.           on and  /F is  called, the above  settings are returned  to their
  1405.           default values.
  1406.  
  1407.           Example:  QCALC /F 12345.12345 500
  1408.           Result:   QCALC -> 12345.12435 = $12,345.12
  1409.                     QCALC -> 500 = $500.00
  1410.  
  1411.  
  1412.           SWITCH /Ox:  Alters the output of answers.
  1413.  
  1414.           (LET/TOGGLE)  Has a number of arguments.  These are:
  1415.  
  1416.             Q   Toggles printing of "QCALC ->".
  1417.             X   Toggles printing of the expression.
  1418.             E   Toggles printing of the equal sign.
  1419.             R   Prints answers (results) only.  Same as /OQOXOE.
  1420.             A   Toggles printing of the answer.  (Got a use for this?)
  1421.             V   For variables, toggles printing of "[var NAME]".
  1422.             N   Toggles printing of the newline (carraige return).
  1423.             S   Toggles printing of the separator.  (See /S.)
  1424.             O   Prints answers all on one line.  Same as /OSONOR.
  1425.             P   Supends printing of variable creation.  (All parts.)
  1426.             D   Restores all /O defaults.
  1427.  
  1428.           Example:    QCALC /OO 5*5 5+5 5-5
  1429.           Result:     25 10 0
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.           _________________________________________________________________
  1450.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 24
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.           SWITCH /E:  Alters the printing of errors.
  1459.  
  1460.           (LET)  Requires N B H or V as an argument.  /EN prints NO errors.
  1461.           If an error occurs,  no mention will be made of  the error.  This
  1462.           may result in "empty lines" --  be careful with this switch!  /EB
  1463.           prints  BRIEF errors.  If  an error occurs,  "Error!" is printed,
  1464.           rather than the description of the error.  /EH prints full errors
  1465.           (same as /EV),  but halts QCALC once an error  occurs.  (This may
  1466.           be a  desirable option to put in the QCALC variable.)  /EV prints
  1467.           VERBOSE errors.   This is the  default --  when an error  occurs,
  1468.           QCALC prints the full error message,  and a caret (^) on the next
  1469.           line attempts to point out the error.  In the following  example,
  1470.           /EB turns BRIEF printing on.  The symbol "sin" is not a variable,
  1471.           it's a function, so QCALC reports "Syntax error!"  However, since
  1472.           /EB is on, it only reports ...
  1473.  
  1474.           Example:    QCALC /EB 5*sin
  1475.           Result:     QCALC -> 5*SIN = Error!
  1476.  
  1477.  
  1478.  
  1479.           SWITCH /S:  Changes the separator between answers used with /OS.
  1480.  
  1481.           (STRING)   REQUIRES a string as an argument.  This string MUST be
  1482.           surrounded by quotes.   (Quotes are necessary because of  the way
  1483.           DOS parses strings -- screwy things  may occur without them.)  In
  1484.           actuality, the S and the string do not have to be touching (there
  1485.           can be a space between them) -- the S  only signals that the next
  1486.           argument is a string.  But  a string surrounded by quotes MUST be
  1487.           the next  argument.   The separator is  only active when  the /OS
  1488.           switch is turned on.  The default separator is a  single space --
  1489.           this separator  is printed between  any answers.   The  following
  1490.           turns  on single line printing, and selects a space, two hyphens,
  1491.           and  another space  as  the separator.    (To remove  that  third
  1492.           separator, put a /OS before the 3 on the command line.)
  1493.  
  1494.           Example:    QCALC /OOS" -- " 1 2 3
  1495.           Result:     1 -- 2 -- 3 --
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.           _________________________________________________________________
  1511.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 25
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.           SWITCH /N:  Restores all switches to their defaults.
  1520.  
  1521.           This switch is NOT a toggle switch.  Once specified, answers will
  1522.           be printed as if no switches  were ever called (restored to their
  1523.           default parameters).   This includes  any switches  in the  QCALC
  1524.           environment variable!   The following example  turns on financial
  1525.           printing and prints only  the answers.  Then it  prints a number,
  1526.           restores defaults, and prints the number again.
  1527.  
  1528.           Example:       
  1529.                     QCALC /FOR 1234.1234 /N 1234.1234
  1530.           Results:  $1,234.12
  1531.                     QCALC -> 1234.1234 = 1234.1234
  1532.  
  1533.  
  1534.           SWITCH /FNORD:  Suspends the printing of the opening header.
  1535.  
  1536.           "Quick-Calculator   Version blah blah  blah" can be  suspended by
  1537.           having  /FNORD as an argument anywhere in the command line, or in
  1538.           the QCALC  environment variable.    /FNORD may  be combined  with
  1539.           other switches,  despite its  unsightly appearance.   /FNORD will
  1540.           not have any affect inside of a script file.
  1541.  
  1542.           The following prints NOTHING at all:
  1543.                QCALC /FNORD
  1544.  
  1545.  
  1546.                                 "I love beer." - Brent
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.           _________________________________________________________________
  1573.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 26
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.                THANKS AND REGRETS
  1582.                ------------------
  1583.  
  1584.  
  1585.           Thanks to Scott  Straley and  Greg Matyola for  advice and  beta-
  1586.           testing on this project.
  1587.  
  1588.           Thanks to the people who make the software I use:
  1589.           Borland, Inc.           Borland C++
  1590.           Semware                 Quick Edit 2.10
  1591.           Howard Kapustein        Turbo C library (TCHK 2.0)
  1592.           Vern Buerg              List 7.5i
  1593.           Word Perfect, Co.       Word Perfect 5.1
  1594.  
  1595.           This is the first release  of QCALC, so I imagine many  bugs will
  1596.           pop up and annoy people, and the lack of hindsight will come back
  1597.           to haunt me.  If you have any errors to report, or suggestions to
  1598.           make, send them to:
  1599.  
  1600.                John Newlin 
  1601.                Re: QCALC v. ______  (write in version number you're using)
  1602.                66 Birchwood Drive
  1603.                Millington, NJ 07946
  1604.  
  1605.           I  should be  at this  address a  while, considering  I'm  out of
  1606.           college,  can't get  a job,  and leeching  off the  parents still
  1607.           seems like a good idea.  Also, by the way, this is the address to
  1608.           send your  checks too.  (And just  in case there's confusion, put
  1609.           MY name in the  "TO" portion of the check.  It's  a bit difficult
  1610.           to cash checks made  out to "QCALC", because my  driver's license
  1611.           says John Newlin.)
  1612.  
  1613.           Enjoy, all.
  1614.  
  1615.  
  1616.  
  1617.                 "If you weren't keeping me hostage in the bathroom, 
  1618.                  I might agree with you that I should pay for the door."
  1619.  
  1620.                                                  - John Newlin 
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.           _________________________________________________________________
  1634.              Quick-Calculator -- Copyright (c) 1991 John Newlin  -- Page 27
  1635.