雖說高精度直接考查的越來越少,不過還是以防萬一。
#define maxlen 1000
struct bint
//*******本模板既可輸入字串,也可輸入整數*******//
bint(int t)
if(len>1)len--;
}bint(char *str)
//print number
friend void print(bint bi)
//print number+enter
friend void println(bint bi)
//可作連=運算
bint operator=(int t)
while(t)
len--;
return *this;
}bint operator=(char *str)
friend int cmp(const bint &a,const bint &b)
//*******加法*******//
bint operator+(const bint &bi)
if(i>1)c.len=i-1;
return c;
}//*******減法*******//
bint operator-(const bint &bi)else j=0;
}c.len=len;while(c.len>1 && !c.s[c.len])c.len--;
return c;
}//*******乘法*******//
bint operator*(const bint &bi)
//*******除法*******//
bint operator/(const bint &bi)
d.s[1]=s[i];
while((j=cmp(d,bi))>=0)
}c.len=len;
while(c.len>1 && c.s[c.len]==0)c.len--;
return c;
}//*******取餘*******//
bint operator%(const bint &bi)
d.s[1]=s[i];
while((j=cmp(d,bi))>=0)
}return d;
}//*******次方*******//
bint pow(int exp)
return ret;
}};bint a,b;
int main()
高精度運算
今天覆習了一下高精度運算。我覺得這種簡單的東西也得看一看,至少給自己留點兒低!高精度可以壓位的,但我今年懶得寫了 首先是加減法很簡單了,沒什麼值得特別強調的。高精度減法時別忘了,a時做下交換在計算,輸出時別忘了標記負號。高精度乘法需要注意的問題是,要在做完乘法之後再調整為十進位制。有的初學者小盆友喜...
高精度運算
name 高精度運算 author goal00001111 date 01 12 08 15 04 description 高精度運算 加減乘除,乘方,階乘 include include using namespace std void reverse string str void addin...
高精度運算
資料讀入,加減乘除,階乘,取餘。不支援負數。乘除只支援大整數和小整數的運算。包括了所有已知的演算法競賽當中的大數運算。這應該是迭代比較完美的一代了,終於完成了高精度模板,繼續加油!const int maxlen 1005 struct bigint j num j 1 digit j bigint...