两非负整数的高精度加减乘除模C++
直接打包成一个类模板了,加减法相对来说要简单一点,乘法的实现参考的算法竞赛入门里的bign类,比我之前写的简洁多了–。除法我是直接在有加减乘法的基础上模拟人的算法实现的,有了除法后,模就更简单了= =
其实在这些的基础上,是可以扩展成负数之间的运算的,还可以小数 = =
#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <vector>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <cassert>
using namespace std;
//#define LOCAL
const int MAX = 3000 + 10;
class Number{
friend ostream& operator<<(ostream &, const Number &);
friend istream& operator>>(istream &, Number&);
friend Number operator+(const Number&, const Number&);
friend Number operator-(const Number&, const Number&);
friend Number operator*(const Number&, const Number&);
friend Number operator/(const Number&, const Number&);
friend Number operator%(const Number&, const Number&);
friend Number operator>>(const Number&, int);
friend bool operator<(const Number&, const Number&);
friend bool operator>(const Number &, const Number &);
friend bool operator<=(const Number&, const Number&);
friend bool operator>=(const Number &, const Number &);
friend bool operator==(const Number &, const Number &);