#include<iostream>
#include<cstring>
using namespace std;
class SupperNum
{
public:
SupperNum();
~SupperNum();
void Plus(); //接口与实现分离
void dump() const; //打印超级大数求和结果
void scan();
protected:
int get_a() const; //超级大数a的长
int get_b() const; //超级大数b的长
int get_sum() const; //求和后的数的长
enum{Maxsize=100};
private:
void Core_Sum(); //核心函数
char *a;
char *b;
char *sum;
int flag; //进位标志
};
SupperNum::SupperNum()
{
a = new char[Maxsize+1];
b = new char[Maxsize+1];
sum = new char[Maxsize+2];
flag = 0; //不进位为0
}
SupperNum::~SupperNum()
{
delete [] a;
delete [] b;
delete [] sum;
}
inline int SupperNum::get_a() const { return strlen(
#include<cstring>
using namespace std;
class SupperNum
{
public:
SupperNum();
~SupperNum();
void Plus(); //接口与实现分离
void dump() const; //打印超级大数求和结果
void scan();
protected:
int get_a() const; //超级大数a的长
int get_b() const; //超级大数b的长
int get_sum() const; //求和后的数的长
enum{Maxsize=100};
private:
void Core_Sum(); //核心函数
char *a;
char *b;
char *sum;
int flag; //进位标志
};
SupperNum::SupperNum()
{
a = new char[Maxsize+1];
b = new char[Maxsize+1];
sum = new char[Maxsize+2];
flag = 0; //不进位为0
}
SupperNum::~SupperNum()
{
delete [] a;
delete [] b;
delete [] sum;
}
inline int SupperNum::get_a() const { return strlen(

该博客介绍了一个使用C++实现的超级大数求和类`SupperNum`,包括类的构造、析构、获取长度、打印、扫描和核心求和函数。类中维护了三个字符数组分别存储两个输入的大数和它们的和,通过核心函数`Core_Sum`进行逐位相加并处理进位。在`main`函数中创建`SupperNum`对象,读入大数,进行求和并打印结果。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



