回 帖 发 新 帖 刷新版面

主题:[求助]用串实现两个任意大的数的乘积(数据结构C语言)!--急!谢啦!!!

各位仁兄仁弟仁姐仁妹
[color=FF0000]用串实现两个任意大的数的乘积(数据结构C语言)[/color]
谁会请跟帖发上来啊!
谢谢啊!

回复列表 (共5个回复)

沙发


以前写的一个求大数阶乘的程序(C++/STL)的,
算法在这,改成C的也不是很麻烦的.
[code]
#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;
int main(int argc,char **argv)
{
         vector<long> num;num.push_back(1);
         for(int i(2),bit(0); i<=atol(argv[1]); ++i ){
                 vector<long>::iterator ei(--num.end());

                 for(bit=0;num.begin()<=ei;--ei)

9999<(*ei=*ei*i+bit)?bit=(*ei)/(10000),(*ei)%=(10000):bit=0;
                 if(bit)num.insert(num.begin(),bit);
         }
         vector<long>::iterator bi(num.begin());
         cout<<*bi;
         for(++bi;bi!=num.end();++bi)

cout<<(*bi/1000)<<(*bi/100>10?*bi/100%10:*bi/100)<<(*bi/10>10?*bi/10%((*bi/100)*10):*bi/10)<<*bi%10;
         exit(0);
}

[/code]

板凳

谢谢楼上,不过,可以好人做到底不?!
呵呵

3 楼


[em8]用串实现两个任意大的数的乘积(数据结构C语言)!
你可不可以弄好啊?谢谢你!!!

4 楼

http://groups.google.com/group/DataStream/browse_frm/thread/9d8899a60ea87860/#
代码超过5000了,贴不上来,进链接

5 楼

C++我不懂啊~~~~~~

我来回复

您尚未登录,请登录后再回复。点此登录或注册