home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / os / vms / 17762 < prev    next >
Encoding:
Text File  |  1992-11-10  |  3.5 KB  |  89 lines

  1. Newsgroups: comp.os.vms
  2. Path: sparky!uunet!think.com!spool.mu.edu!umn.edu!moose.cccs.umn.edu!rao
  3. From: rao@moose.cccs.umn.edu (Rao Akella)
  4. Subject: Re: lOOking for Calculator program
  5. Message-ID: <1992Nov11.035130.20113@news2.cis.umn.edu>
  6. Keywords: calculator
  7. Lines: 73
  8. Sender: news@news2.cis.umn.edu (Usenet News Administration)
  9. Nntp-Posting-Host: found.cccs.umn.edu
  10. Reply-To: rao@moose.cccs.umn.edu
  11. Organization: Colon Cancer Control Study, University of Minnesota, Minneapolis
  12. References:  <1992Nov7.232746.46@lancc.uucp>
  13. Date: Wed, 11 Nov 1992 03:51:30 GMT
  14. Lines: 73
  15.  
  16.  
  17. In article <1992Nov7.232746.46@lancc.uucp>, rick@lancc.uucp writes:
  18. > I'm looking for a simple "calculator" type program that runs under
  19. > VMS.
  20. > Anybody seen a good (quick) public domain one around?
  21.  
  22. Pick up the file ICALC.TXT via anonymous ftp from moose.cccs.umn.edu
  23. [128.101.133.53] and follow the instructions contained therein.
  24.  
  25. If you do not have FTP access, please contact me somehow with some form
  26. of
  27. e-mail/paper-mail address, and I'll post it to you personally.
  28.  
  29. ICALC is a simple, portable infix calculator which compiles on
  30. VMS, Unix and DOS with no changes required (for most "standard"
  31. C environments).
  32.  
  33. Features:
  34. ~~~~~~~~
  35.     1) Addition (+), Subtraction (-), Multiplication (*), Division (/)
  36.  
  37.     2) Modulus (%), Power (^)
  38.  
  39.     3) Bitwise logical operators: bitwise AND (&), bitwise inclusive
  40.        OR (|), unary one's complement (~)
  41.  
  42.     4) 20 Math/Trigonometric functions: sin, cos, tan, asin, acos,
  43. atan,
  44.        sinh, cosh, tanh, exp (exponentiation), ln (natural log),
  45.        log (base 10 log), sqrt (square root), ceil (ceiling), floor,
  46.        int/trunc (truncation), abs (absolute value),
  47.        degtorad (degrees->radians), radtodeg (radians->degrees).
  48.  
  49.        Two Date functions to convert between calendar dates and julian
  50.        days: caltojul (calendar->julian date) and jultocal
  51.        (julian->calendar date).
  52.  
  53.        One '?'-for-help command to display a help screen of all
  54.        supported commands and functions.
  55.  
  56.     5) Temporary variables (as many as you want, with names as long as
  57.        you want) to store intermediate computations.
  58.  
  59.     6) This is a "portable" calculator in the sense that it's not
  60.        specific to any operating system.  The yacc output should be
  61.        compilable by any C compiler; this program has been tested on
  62.        Unix, VAX/VMS and PC/MS-DOS, and has required no changes to
  63.        compile.
  64.  
  65.     7) This program uses the simplest of input and output formats, and
  66.        is in no way hardware dependent.  So, as long as it compiles
  67.        without any problems, there are no other requirements for it to
  68.        work properly.
  69.  
  70.     8) All numbers are of the C floating-point type "double", which,
  71.        according to the VAX C manual, has a range of 0.29*10^-38 to
  72.        1.7*10^38, and has values precise to 16 decimal digits.
  73.  
  74.     9) Allows any number of expressions on a line, separated by ';'
  75.  
  76.    10) icalc can now be run either interactively (when it is
  77.        invoked without any arguments, in which case the user is
  78.        prompted for input) or in a command-line mode (when all
  79.        expressions to be computed are passed to icalc via
  80.        command-line "argv" arguments, in which case icalc computes
  81.        and prints the result of each expression -- exactly as if
  82.        it had been entered interactively -- and then exits).
  83.        In the latter case, the user is supposed to delimit/
  84.        separate the expressions by ';'
  85.  
  86.  
  87. -- Rao Akella    <rao@moose.cccs.umn.edu, rao%moose@umnacvx.bitnet>
  88.