#include #include #include #include int main() { using bstl::BigInteger; const BigInteger a("12345678901234567890"); const BigInteger b("98765432109876543210"); const BigInteger c = a + b; const BigInteger d = b - a; const BigInteger e = a * BigInteger("2"); const BigInteger f = BigInteger("100000000000000000000000") / BigInteger("1000000000000000000"); assert(c.toString() == "111111111011111111100"); assert(d.toString() == "86419753208641975320"); assert(e.toString() == "24691357802469135780"); assert(f.toString() == "100000"); const BigInteger zero("0"); assert((a == a) == true); assert((a != b) == true); assert((zero == 0) == true); assert((a > BigInteger("12345678901234567889")) == true); assert((a < b) == true); std::cout << "BigInteger tests passed\n"; return 0; }