|
Public Member Functions |
| Number () |
| Number (string number, const ParseOptions &po=default_parse_options) |
| Number (int numerator, int denominator=1, int exp_10=0) |
| Number (const Number &o) |
void | set (string number, const ParseOptions &po=default_parse_options) |
void | set (int numerator, int denominator=1, int exp_10=0) |
void | setInfinity () |
void | setPlusInfinity () |
void | setMinusInfinity () |
void | setFloat (double d_value) |
void | setInternal (const cln::cl_N &cln_value) |
void | setImaginaryPart (const Number &o) |
void | setImaginaryPart (int numerator, int denominator=1, int exp_10=0) |
void | set (const Number &o) |
void | clear () |
const cln::cl_N & | internalNumber () const |
double | floatValue () const |
int | intValue (bool *overflow=NULL) const |
bool | isApproximate () const |
bool | isApproximateType () const |
void | setApproximate (bool is_approximate=true) |
int | precision () const |
void | setPrecision (int prec) |
bool | isUndefined () const |
bool | isInfinite () const |
bool | isInfinity () const |
bool | isPlusInfinity () const |
bool | isMinusInfinity () const |
Number | realPart () const |
Number | imaginaryPart () const |
Number | numerator () const |
Number | denominator () const |
Number | complexNumerator () const |
Number | complexDenominator () const |
void | operator= (const Number &o) |
ref= args=<(int)> -->
void | operator-- (int) |
void | operator++ (int) |
Number | operator- () const |
Number | operator * (const Number &o) const |
Number | operator/ (const Number &o) const |
Number | operator+ (const Number &o) const |
Number | operator- (const Number &o) const |
Number | operator^ (const Number &o) const |
Number | operator && (const Number &o) const |
Number | operator|| (const Number &o) const |
Number | operator! () const |
void | operator *= (const Number &o) |
void | operator/= (const Number &o) |
void | operator+= (const Number &o) |
void | operator-= (const Number &o) |
void | operator^= (const Number &o) |
bool | operator== (const Number &o) const |
bool | operator!= (const Number &o) const |
bool | bitAnd (const Number &o) |
bool | bitOr (const Number &o) |
bool | bitXor (const Number &o) |
bool | bitNot () |
bool | bitEqv (const Number &o) |
bool | shiftLeft (const Number &o) |
bool | shiftRight (const Number &o) |
bool | shift (const Number &o) |
bool | hasRealPart () const |
bool | hasImaginaryPart () const |
bool | isComplex () const |
bool | isInteger () const |
Number | integer () const |
bool | isRational () const |
bool | isReal () const |
bool | isFraction () const |
bool | isZero () const |
bool | isOne () const |
bool | isTwo () const |
bool | isI () const |
bool | isMinusI () const |
bool | isMinusOne () const |
bool | isNegative () const |
bool | isNonNegative () const |
bool | isPositive () const |
bool | isNonPositive () const |
bool | realPartIsNegative () const |
bool | realPartIsPositive () const |
bool | imaginaryPartIsNegative () const |
bool | imaginaryPartIsPositive () const |
bool | hasNegativeSign () const |
bool | hasPositiveSign () const |
bool | equalsZero () const |
bool | equals (const Number &o) const |
bool | equalsApproximately (const Number &o, int prec) const |
ComparisonResult | compare (const Number &o) const |
ComparisonResult | compareApproximately (const Number &o, int prec=EQUALS_PRECISION_LOWEST) const |
ComparisonResult | compareImaginaryParts (const Number &o) const |
ComparisonResult | compareRealParts (const Number &o) const |
bool | isGreaterThan (const Number &o) const |
bool | isLessThan (const Number &o) const |
bool | isGreaterThanOrEqualTo (const Number &o) const |
bool | isLessThanOrEqualTo (const Number &o) const |
bool | isEven () const |
bool | denominatorIsEven () const |
bool | denominatorIsTwo () const |
bool | numeratorIsEven () const |
bool | numeratorIsOne () const |
bool | numeratorIsMinusOne () const |
bool | isOdd () const |
int | integerLength () const |
bool | add (const Number &o) |
bool | subtract (const Number &o) |
bool | multiply (const Number &o) |
bool | divide (const Number &o) |
bool | recip () |
bool | raise (const Number &o, bool try_exact=true) |
bool | exp10 (const Number &o) |
bool | exp2 (const Number &o) |
bool | exp10 () |
bool | exp2 () |
bool | square () |
bool | negate () |
void | setNegative (bool is_negative) |
bool | abs () |
bool | signum () |
bool | round (const Number &o) |
bool | floor (const Number &o) |
bool | ceil (const Number &o) |
bool | trunc (const Number &o) |
bool | mod (const Number &o) |
bool | isqrt () |
bool | round () |
bool | floor () |
bool | ceil () |
bool | trunc () |
bool | frac () |
bool | rem (const Number &o) |
bool | smod (const Number &o) |
bool | irem (const Number &o) |
bool | irem (const Number &o, Number &q) |
bool | iquo (const Number &o) |
bool | iquo (const Number &o, Number &r) |
int | getBoolean () const |
void | toBoolean () |
void | setTrue (bool is_true=true) |
void | setFalse () |
void | setLogicalNot () |
void | e () |
void | pi () |
void | catalan () |
void | euler () |
bool | zeta () |
bool | sin () |
bool | asin () |
bool | sinh () |
bool | asinh () |
bool | cos () |
bool | acos () |
bool | cosh () |
bool | acosh () |
bool | tan () |
bool | atan () |
bool | tanh () |
bool | atanh () |
bool | ln () |
bool | log (const Number &o) |
bool | exp () |
bool | lambertW () |
bool | gcd (const Number &o) |
bool | lcm (const Number &o) |
bool | factorial () |
bool | multiFactorial (const Number &o) |
bool | doubleFactorial () |
bool | binomial (const Number &m, const Number &k) |
bool | factorize (vector< Number > &factors) |
bool | add (const Number &o, MathOperation op) |
string | printNumerator (int base=10, bool display_sign=true, BaseDisplay base_display=BASE_DISPLAY_NORMAL, bool lower_case=false) const |
string | printDenominator (int base=10, bool display_sign=true, BaseDisplay base_display=BASE_DISPLAY_NORMAL, bool lower_case=false) const |
string | printImaginaryNumerator (int base=10, bool display_sign=true, BaseDisplay base_display=BASE_DISPLAY_NORMAL, bool lower_case=false) const |
string | printImaginaryDenominator (int base=10, bool display_sign=true, BaseDisplay base_display=BASE_DISPLAY_NORMAL, bool lower_case=false) const |
string | print (const PrintOptions &po=default_print_options, const InternalPrintStruct &ips=top_ips) const |
Protected Member Functions |
void | removeFloatZeroPart () |
void | testApproximate () |
void | testInteger () |
void | setPrecisionAndApproximateFrom (const Number &o) |
Protected Attributes |
cln::cl_N | value |
bool | b_inf |
bool | b_pinf |
bool | b_minf |
bool | b_approx |
int | i_precision |
Can be rational, floating point, complex or infinite. Has arbitrary precision (uses Calculator::precision()) and infinitely large rational numbers. Implimented using CLN numbers.