Introduction
This is a C++ based big number class. I host this project just for fun. There are some powerful libs for high precision arithmetic operations such as GMP. I hope to improve my coding ability through this project.
Log
- Jan/8/2008 - Update wiki page.
- Jan/16/2008 - BigInt Class, write the souce code for ctr for arguments such as string/C-string/int etc and test the code.
- Jan/29/2008 - Implement add/minus function for int( class BigInt ).
- Jan/31/2008 - Implement and debug for add operation.
- Feb/8/2008 - Implement memory model for bigint class.
- Feb/10/2008 - Implement power(m, n) function, solve several bugs, upload source codes to svn repository in trunk directory.
- Feb/19/2008 - Implement factorial(n) function. Solve several bugs including bugs in pdivide function.
- Feb/21/2008 - Debug operator %, find some bugs in pminus() function and solve them.
- Feb/22/2008 - BigReal ctors implementation and debug.
- Feb/23/2008 - BigReal constructor function implement.
- Mar/3/2008 - BigReal ctor debug, test several test cases for BigReal.
- Mar/4/2008 - BigReal debug, finish debuging ctors. Implement copy ctor.
- Mar/6/2008 - Implement BigReal's ctor for BigInt and vice versa; Implement operator>> for BigReal; Implement operator= for BigReal.
- Mar/11/2008 - Implement member function swap for BigReal and BigInt; Implement swap function in func.h; Implement pcomp, ==, !=, >=, >, <=, < .
- Mar/12/2008 - Debug: ==, !=, >=, >, <=, < and pcomp.
- Mar/25/2008 - BigReal::Add() implement.
- Mar/26/2008 - BigReal::add() implement and debug.
- Mar/27/2008 - BigReal::add() debug.
- April/1/2008 - BigReal::add() debug, finish positive add positive and negative add negative function debug.
- April/2/2008 - Implement pminus() and finish implement add() function.
- April/10/2008 - Implement minus() and test it.
- April/13/2008 - Implement BigReal::multiply() and test it.
- April/15/2008 - Implement BigReal and BigInt's divide function.
- April/22/2008 - Implement BigReal's divide function, debug BigInt and BigReal's divide function.
- May/6/2008 - Debug BigReal::Divide, BigInt::Divide, BigReal::resultAdjust.
- May/8/2008 - Finish debugging about BigReal::divide. Add several overloaded functions in func.h and func.cpp files.
- May/12/2008 - Implement sqrt and abs function in func.cpp
- May/13/2008 - Solve bugs in BigReal::pcomp, sqrt for BigInt.
- May/14/2008 - Implement billjeff::sqrt for BigReal and finish debug it. Debug billjeff::abs template function. Implement operator% for BigInt and test it.
- May/20/2008 - Impelment isPrime() in func.cpp and debug it.
- May/24/2008 - Add keyword explicit to BigInt and BigReals' ctors which are used to construct BigReal and BigInt's object from other types such as int/string etc. And finish debug T18 in test_bigreal.cpp. Add overloaded function in func.h for comparison and math operations. See svn diff for more details.
- May/26/2008 - Implement and debug fib(BigInt) and fib(int) in func.cpp.
- May/27/2008 - Implement gcd and lcm in func.h, and debug them.
- May/28/2008 - Finish Implement functions specified in func.h. Add try...catch block to new and delete statements.
- May/29/2008 - Improve power function using binary way. Release the version 1.0 of BigNumber.
Current Work
- To implement sqr, sqrt, log, pi calculation, isprime, nextPrime, gcd, lcm, fibnacci, abs, bit, random, math related functions.
- To implement XML-RPC supported server program.
TODO
- Multi-thread support.
- Reference some functions from other libs.
- Limit the value of mem ;