bc man page on HP-UX

Man page or keyword search:  
man Server   10987 pages
apropos Keyword Search (all sections)
Output format
HP-UX logo
[printable version]

bc(1)									 bc(1)

NAME
       bc - arbitrary-precision arithmetic language

SYNOPSIS
       [file...]

DESCRIPTION
       is  an  interactive  processor for a language that resembles C but pro‐
       vides unlimited-precision arithmetic.  It takes input  from  any	 files
       given, then reads the standard input.

   Options
       recognizes the following command-line options:

	      Compile only.
			is actually a preprocessor for which invokes automati‐
			cally (see dc(1)).  Specifying prevents	 invoking  dc,
			and sends the dc input to standard output.

	      causes an arbitrary-precision math library to be predefined.
			As a side effect, the scale factor is set.

   Program Syntax
       L    a single letter in the range through
       E    expression;
       S    statement;
       R    relational expression.

   Comments
       Comments are enclosed in and

   Names
       Names include:

	      simple variables:	   L
	      array elements:	  L [ E ]
	      stacks:	 L

   Other Operands
       Other operands include:

	      Arbitrarily  long	 numbers  with optional sign and
	      decimal point.

	      ( E )

	      sqrt ( E )

	      length ( E )	  number of significant	 decimal
				  digits

	      scale ( E )	  number of digits right of dec‐
				  imal point

	      L ( E , ... , E )

	      Strings of ASCII	characters  enclosed  in  quotes
	      ("").

   Arithmetic Operators:
       Arithmetic operators yield an E as a result and include:
	      is remainder (not mod, see below); is power).

	      (prefix and append; apply to names)

	  Relational Operators
	      Relational operators yield an R when used as op

   Statements
       E
       { S ; ... ; S }
       if ( R ) S
       while ( R ) S
       for ( E ; R ; E ) S
       null statement
       break
       quit

   Function Definitions
       define L ( L ,..., L ) {
	    auto L, ... , L
	    S; ... S
	    return ( E )
       }

   Functions in −l Math Library
       Functions in the math library include:

	      s(x)    sine
	      c(x)    cosine
	      e(x)    exponential
	      l(x)    log
	      a(x)    arctangent
	      j(n,x)  Bessel function

       All  function arguments are passed by value.  Trigonomet‐
       ric angles are in  radians  where  2  pi	 radians  =  360
       degrees.

       The value of a statement that is an expression is printed
       unless the main operator is an assignment.  No  operators
       are  defined for strings, but the string is printed if it
       appears in a context where an expression result would  be
       printed.	  Either  semicolons  or  new-lines can separate
       statements.  Assignment to scale influences the number of
       digits  to  be  retained	 on arithmetic operations in the
       manner of dc(1).	 Assignments to or  set	 the  input  and
       output  number  radix  respectively,  again as defined by
       dc(1).

       The same letter can be used simultaneously as an array, a
       function,  and  a  simple  variable.   All  variables are
       global to the program.  "Auto" variables are pushed  down
       during  function	 calls.	  When	using arrays as function
       arguments or defining them as automatic variables,  empty
       square brackets must follow the array name.

       The  operator  yields the remainder at the current scale,
       not the integer modulus.	 Thus, at scale 1,  is	.1  (one
       tenth),	not 1.	This is because (at scale 1) is 2.3 with
       .1 as the remainder.

EXAMPLES
       Define a function to compute an approximate value of  the
       exponential function:

       Print  approximate  values of the exponential function of
       the first ten integers.

WARNINGS
       There are currently no (AND) or (OR) comparisons.

       The statement must have all three expressions.

       is interpreted when read, not when executed.

       parser is not robust in the face of input  errors.   Some
       simple  expression  such	 as  2+2  helps get it back into
       phase.

       The  assignment	operators:  and	  are	obsolete.    Any
       occurences  of  these operators cause a syntax error with
       the exception of which is interpreted as	 followed  by  a
       unary minus.

       Neither	entire	arrays	nor  functions	can be passed as
       function parameters.

FILES
       desk calculator executable program
       mathematical library

SEE ALSO
       bs(1), dc(1).

       tutorial in

STANDARDS CONFORMANCE
									 bc(1)
[top]

List of man pages available for HP-UX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net