SHA256
32 lines
916 B
C++
32 lines
916 B
C++
#include <bstl/big_integer.hpp>
|
|
|
|
#include <cassert>
|
|
#include <iostream>
|
|
#include <string>
|
|
|
|
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;
|
|
}
|