#include <iostream>
#include <string>
#define SIZE 15001
using namespace std;
class bignum
{
public:
string s;
inline void read(void) // 输入函数
{
cin >> s;
return;
}
inline void write(void) // 输出函数
{
cout << s;
return;
}
inline int len(void) // 长度
{
return s.size();
}
inline bignum operator +(bignum bb) const // 加法
{
bignum aa = *this;
int i, t;
if (aa.s.size() < bb.s.size())
{
t = aa.s.size();
for (i = 1; i <= bb.s.size() - t; i++)
{
aa.s = "0" + aa.s;
}
}
else
{
t = bb.s.size();
for (i = 1; i <= aa.s.size() - t; i++)
{
bb.s = "0" + bb.s;
}
}
for (i = aa.s.size() - 1; i >= 0; i--)
{
aa.s[i] += bb.s[i] - '0';
if (aa.s[i] > '9')
{
if (i)
{
aa.s[i] -= 10;
aa.s[i-1]++;
}
else
{
aa.s[i] -= 10;
aa.s = "1" + aa.s;
}
}
}
return aa;
}
};
ostream& operator <<(ostream &outp, bignum aa) // 输出流
{
aa.write();
return outp;
}
istream& operator >>(istream &inp, bignum &aa) // 输入流
{
aa.read();
return inp;
}
高精度类基本框架已成
最新推荐文章于 2021-05-07 21:32:44 发布