📄 slnum.h
字号:
// slnum.h: interface for the slnum class.
//定义一个超高精度的类slnum,用以实现超过20位有效数字整型数值的运算,并具有
//兼容已有整型数据int的能力,能与int数据混合运算。
//版权所有,贵州师范大学数学与计算机科学系2001成计本班罗国文(贵州天柱二中)
//凡引用本文件不得删除上述信息
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SLNUM_H__7CCD5AC4_58A5_11D7_BAE3_00E04C41E1AD__INCLUDED_)
#define AFX_SLNUM_H__7CCD5AC4_58A5_11D7_BAE3_00E04C41E1AD__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class slnum
{
public:
char * soure; //数的字符串形式
int sign; //数的符号:>=0时为+1;<0时为-1
int arr_n; //数转换为数组表示后数组的大小
long *sl; //数的数组表示
public:
slnum();
slnum(const char * s);
bool operator >(const slnum &num); //大于比较
bool operator >=(const slnum &num); //大于等于比较
bool operator ==(const slnum &num); //相等比较
bool operator <(const slnum &num); //小于比较
bool operator <=(const slnum &num); //小于等于比较
bool operator !=(const slnum &num); //不等于比较
slnum operator +(const slnum &num); //加运算
slnum operator +(int num); //与常规整数的加运算
slnum operator -(const slnum &num); //减运算
slnum operator -(int num); //与常规整数的减运算
slnum operator *(const slnum &num); //乘运算
slnum operator *(int num); //与常规整数的乘运算
slnum operator /(const slnum &num); //除运算
slnum operator /(int num); //与常规整数的除运算
void operator =(int num); //用常规整数进行赋值
void operator =(char * num); //用常规整数串进行赋值
slnum operator %(const slnum &num); //求余运算
slnum operator %(int num); //与常规整数的求余运算
slnum operator -(); //求相反数
friend void regulator(slnum *num); //进位、借位调整器
friend void regulator_sign(slnum *num); //符号调整
void setval(const char * s); //设置值
char * getval(); //获取值
friend void sltostr(slnum *num); //将数值数组转换为内部串soure
friend slnum abs(const slnum &num); //求绝对值
virtual ~slnum();
};
#endif // !defined(AFX_SLNUM_H__7CCD5AC4_58A5_11D7_BAE3_00E04C41E1AD__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -