C++课程设计之大整数类(二)

2014-11-24 03:26:00 · 作者: · 浏览: 1
eJudge(a,tmp) == 1) { count = count+1; tmp = b*count; } } else if(SizeJudge(a,tmp) == -1) { while(SizeJudge(a,tmp) == -1) { count = count-1; tmp = b*count; } } if((a.negative == 0&&b.negative == 1)||(a.negative == 1&&b.negative == 0))//a正b负//a负b正 { string str="-"; count.vec.push_back(str[0]-'0'); count.negative = 1; } else { count.negative = 0; } return count; } int SizeJudge(BigInt a,BigInt b) {//1代表大于,0代表等于,-1代表小于 int alen,blen,i; alen = a.vec.size(); blen = b.vec.size(); if(alen>blen) { return 1; } else if(alen == blen) { for(i=alen-1;i>=0;i--) { if(a.vec[i]>b.vec[i]) { return 1; } else if(a.vec[i] >b; //cout<<"the input:"< 0) { c = c*a; a = a-1; i--; } cout<<"30! = "<

运行结果:

1.输入:

\

2. 加法:(包含调用拷贝构造函数)

\

3. 减法:< http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PC9wPgo8cD4gPGltZyBzcmM9"https://www.cppentry.com/upload_files/article/49/1_d8uwo__.jpg" alt="\">

4. 乘法:

\

5. 除法:(求商)

\

6. 计算并显示30!