Files
harbour-core/doc/en/math.txt
Viktor Szakats 03ac58b17b 2017-09-08 18:22 UTC Viktor Szakats (vszakats users.noreply.github.com)
* bin/commit.hb
  * config/detect.mk
  * config/detfun.mk
  * config/detplat.mk
  * config/dir.mk
  * config/dirsh.mk
  * config/global.mk
  * config/globsh.mk
  * config/instsh.mk
  * config/lang.hb
  * config/lang2po.hb
  * config/po2lang.hb
  * config/postinst.hb
  * contrib/hbexpat/tests/tohash.prg
  * contrib/hbformat/utils/hbformat.ini
  * contrib/hbmisc/hbedit.prg
  * contrib/hbmxml/tests/testmxml.prg
  * contrib/hbnetio/utils/hbnetio/_console.prg
  * contrib/hbnetio/utils/hbnetio/_winsvc.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * contrib/hbnetio/utils/hbnetio/netiomgm.hb
  * contrib/hbwin/tests/ole.prg
  * contrib/hbwin/tests/oletst2.js
  * contrib/hbwin/tests/oletst2.vbs
  * contrib/hbxpp/doc/en/binnumx.txt
  * contrib/hbxpp/doc/en/dbcmdx.txt
  * contrib/xhb/htmutil.prg
  * contrib/xhb/tfile.prg
  * contrib/xhb/tframe.prg
  * contrib/xhb/thtm.prg
  * ChangeLog.txt
  * debian/copyright
  * doc/class_tp.txt
  * doc/hdr_tpl.txt
  * doc/xhb-diff.txt
  * LICENSE.txt
  * package/harbour-wce.spec.in
  * package/harbour-win.spec.in
  * package/harbour.spec
  * package/mpkg_rpm_wce.sh
  * package/mpkg_rpm_win.sh
  * package/mpkg_rpm.sh
  * package/mpkg_src.sh
  * package/mpkg_ver.sh
  * src/rtl/achoice.prg
  * src/rtl/getsys53.prg
  * src/rtl/tgetlist.prg
  * src/rtl/tlabel.prg
  * src/rtl/tmenusys.prg
  * tests/hbdoc.prg
  * tests/langmsg.prg
  * tests/rto_get.prg
  * tests/rto_tb.prg
  + doc/en/ati.txt
  + doc/en/dirdrive.txt
  + doc/en/hashfunc.txt
  + doc/en/hbtoken.txt
  + doc/en/left.txt
  + doc/en/proc.txt
  + doc/en/strtran.txt
  + doc/en/transfrm.txt
  + doc/en/typefile.txt
  * doc/en/*
    * more partial sync with 3.4 fork
2017-09-08 18:25:11 +00:00

759 lines
16 KiB
Plaintext

/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Abs()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Return the absolute value of a number.
$SYNTAX$
Abs( <nNumber> ) --> nAbsNumber
$ARGUMENTS$
<nNumber> Any number.
$RETURNS$
<nAbsNumber> The absolute numeric value.
$DESCRIPTION$
This function yields the absolute value of the numeric value or
expression <nNumber>.
$EXAMPLES$
LOCAL nNumber := 50
LOCAL nNumber1 := 27
? nNumber - nNumber1
? nNumber1 - nNumber
? Abs( nNumber - nNumber1 )
? Abs( nNumber1 - nNumber )
? Abs( -1 * 345 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Exp()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Calculates the value of e raised to the passed power.
$SYNTAX$
Exp( <nNumber> ) --> nValue
$ARGUMENTS$
<nNumber> Any real number.
$RETURNS$
<nValue> The anti-logarithm of <nNumber>
$DESCRIPTION$
This function returns the value of e raised to the power of
<nNumber>. It is the inverse of Log().
$EXAMPLES$
? Exp( 45 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Log()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Int()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Return the integer port of a numeric value.
$SYNTAX$
Int( <nNumber> ) --> nIntNumber
$ARGUMENTS$
<nNumber> Any numeric value.
$RETURNS$
<nIntNumber> The integer portion of the numeric value.
$DESCRIPTION$
This function converts a numeric expression to an integer. All
decimal digits are truncated. This function does not round a value
upward or downward; it merely truncates a number at the decimal
point.
$EXAMPLES$
Set( _SET_DECIMALS, 5 )
? Int( 632512.62541 )
? Int( 845414111.91440 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Round(), StrZero()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Log()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Returns the natural logarithm of a number.
$SYNTAX$
Log( <nNumber> ) --> nLog
$ARGUMENTS$
<nNumber> Any numeric expression.
$RETURNS$
<nExponent> The natural logarithm of <nNumber>.
$DESCRIPTION$
This function returns the natural logarithm of the number <nNumber>.
If <nNumber> is 0 or less than 0, a numeric overflow occurs,
which is depicted on the display device as a series of asterisks.
This function is the inverse of Exp().
$EXAMPLES$
? Log( 632512 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Exp()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Max()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Returns the maximum of two numbers or dates.
$SYNTAX$
Max( <xValue>, <xValue1> ) --> xMax
$ARGUMENTS$
<xValue> Any date or numeric value.
<xValue1> Any date or numeric value (same type as <xValue>).
$RETURNS$
<xMax> The larger numeric (or later date) value.
$DESCRIPTION$
This function returns the larger of the two passed expressions. If
<xValue> and <xValue1> are numeric data types, the value returned by
this function will be a numeric data type as well and will be the
larger of the two numbers passed to it. If <xValue> and <xValue1>
are date data types, the return value will be a date data type as
well. It will be the later of the two dates passed to it.
$EXAMPLES$
? Max( 214514214, 6251242142 )
? Max( 0d20001111, 0d20140621 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Min()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Min()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Determines the minimum of two numbers or dates.
$SYNTAX$
Min( <xValue>, <xValue1> ) --> xMin
$ARGUMENTS$
<xValue> Any date or numeric value.
<xValue1> Any date or numeric value.
$RETURNS$
<xMin> The smaller numeric (or earlier date) value.
$DESCRIPTION$
This function returns the smaller of the two passed expressions.
<xValue> and <xValue1> must be the same data type. If numeric, the
smaller number is returned. If dates, the earlier date is returned.
$EXAMPLES$
? Min( 214514214, 6251242142 )
? Min( 0d20001111, 0d20140621 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Max()
$END$
*/
/* $DOC$
$TEMPLATE$
Function
$NAME$
Mod()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Return the modulus of two numbers.
$SYNTAX$
Mod( <nNumber>, <nNumber1> ) --> <nRemainder>
$ARGUMENTS$
<nNumber> Numerator in a divisional expression.
<nNumber1> Denominator in a divisional expression.
$RETURNS$
<nRemainder> The remainder after the division operation.
$DESCRIPTION$
This function returns the remainder of one number divided by
another.
$EXAMPLES$
? Mod( 12, 8.521 )
? Mod( 12, 0 )
? Mod( 62412.5142, 4522114.12014 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
%
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Sqrt()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Calculates the square root of a number.
$SYNTAX$
Sqrt( <nNumber> ) --> nSqrt
$ARGUMENTS$
<nNumber> Any numeric value.
$RETURNS$
<nSqrt> The square root of <number>.
$DESCRIPTION$
This function returns the square root of <nNumber>. The precision
of this evaluation is based solely on the setting of `_SET_DECIMALS`.
Any negative number passed as <nNumber> will always return a 0.
$EXAMPLES$
Set( _SET_DECIMALS, 5 )
? Sqrt( 632512.62541 )
? Sqrt( 845414111.91440 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Round()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
$TEMPLATE$
Function
$NAME$
Round()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Rounds off a numeric expression.
$SYNTAX$
Round( <nNumber>, <nPlace> ) --> nResult
$ARGUMENTS$
<nNumber> Any numeric value.
<nPlace> The number of places to round to.
$RETURNS$
<nResult> The rounded number.
$DESCRIPTION$
This function rounds off the value of <nNumber> to the number of
decimal places specified by <nPlace>. If the value of <nPlace> is
a negative number, the function will attempt to round <nNumber> in
whole numbers. Numbers from 5 through 9 will be rounded up, all
others will be rounded down.
$EXAMPLES$
? Round( 632512.62541, 5 )
? Round( 845414111.91440, 3 )
$STATUS$
R
$COMPLIANCE$
C
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
Int(), Str(), Val(), SET FIXED
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathGetLastError()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
get the last math lib error
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathGetLastError( HB_MATH_EXCEPTION * phb_exc )
--> int iMathErrorType
$ARGUMENTS$
phb_exc pointer to HB_MATH_EXCEPTION structure, if not NULL,
the structure will be filled with information about the
last math error:
```c
typedef struct _HB_MATH_EXCEPTION {
int type; // Math error type, is one of the constants
// HB_MATH_ERR_xxx defined in hbmath.ch
char *funcname; // Pointer to name of the math C RTL routine
// that caused the error.
char *error; // Pointer to error description.
double arg1; // First and
double arg2; // Second double argument to the math routine.
double retval; // Corrected return value for the math routine.
int retvalwidth; // Width and
int retvaldec; // Decimals of the corrected return value,
// both default to -1
int handled; // 1, if the math error is already corrected,
// 0 otherwise.
} HB_MATH_EXCEPTION;
```
$RETURNS$
<iMathErrorType>
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathResetError()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
Reset the internal math error information structure
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathResetError( void )
$ARGUMENTS$
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathIsMathErr()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
Check if Harbour math error handling is available
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathIsMathErr( void ) --> int iIsMathHandler
$ARGUMENTS$
$RETURNS$
<iIsMathHandler>
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathSetHandler()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
set the Harbour math handler
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathSetHandler( HB_MATH_HANDLERPROC handlerproc )
--> HB_MATH_HANDLERPROC previous_handerproc
$ARGUMENTS$
handlerproc custom math handler
typedef int (* HB_MATH_HANDLERPROC)(HB_MATH_EXCEPTION * err)
$RETURNS$
previous_handlerproc previous math handler
typedef int (* HB_MATH_HANDLERPROC)(HB_MATH_EXCEPTION * err)
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathGetHandler()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
get current Harbour math error handler
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathGetHandler( void ) --> HB_MATH_HANDLERPROC handlerproc
$ARGUMENTS$
handlerproc custom math handler
typedef int (* HB_MATH_HANDLERPROC)(HB_MATH_EXCEPTION * err)
$RETURNS$
<handerproc>
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathSetErrMode()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
set math error handling mode
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathSetErrMode( int imode ) --> int ioldmode
$ARGUMENTS$
imode math error handling mode, one of the following
constants, defined in hbmath.ch:
<table-noheader>
HB_MATH_ERRMODE_DEFAULT
HB_MATH_ERRMODE_CDEFAULT
HB_MATH_ERRMODE_USER
HB_MATH_ERRMODE_USERDEFAULT
HB_MATH_ERRMODE_USERCDEFAULT
</table>
$RETURNS$
ioldmode old math error handling mode
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
hb_mathGetErrMode()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
C Function
$NAME$
hb_mathGetErrMode()
$CATEGORY$
C level API
$SUBCATEGORY$
Math
$ONELINER$
get math error handling mode
$SYNTAX$
C Prototype
#include "hbmath.h"
hb_mathGetErrMode( void ) --> imode
$ARGUMENTS$
$RETURNS$
imode math error handling mode
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
NA
$FILES$
Header file is hbmath.h
Library is core
$PLATFORMS$
All
$SEEALSO$
hb_mathSetErrMode()
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
Function
$NAME$
hb_matherMode()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Set/Get math error handling mode
$SYNTAX$
hb_matherMode( [<nNewMode>] ) --> nOldMode
$ARGUMENTS$
[<nNumber>] new math error handling mode, one of the following
constants, defined in hbmath.ch:
<table-noheader>
HB_MATH_ERRMODE_DEFAULT
HB_MATH_ERRMODE_CDEFAULT
HB_MATH_ERRMODE_USER
HB_MATH_ERRMODE_USERDEFAULT
HB_MATH_ERRMODE_USERCDEFAULT
</table>
$RETURNS$
<nOldMode> old math error handling mode
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
$PLATFORMS$
All
$FILES$
Header file is hbmath.ch
Library is core
$SEEALSO$
$END$
*/
/* $DOC$
$AUTHOR$
Copyright 2001 IntTec GmbH, Martin Vogel <vogel@inttec.de>
$TEMPLATE$
Function
$NAME$
hb_matherBlock()
$CATEGORY$
API
$SUBCATEGORY$
Math
$ONELINER$
Set/Get math error handling codeblock
$SYNTAX$
hb_matherBlock( [<bNewBlock>] ) --> bOldBlock
$ARGUMENTS$
<bNewBlock>
$RETURNS$
<bOldBlock> is the current error handler codeblock
$DESCRIPTION$
$EXAMPLES$
$STATUS$
R
$COMPLIANCE$
$PLATFORMS$
All
$FILES$
Library is core
$SEEALSO$
$END$
*/