c++高精度算法

qq644716095 2010-09-04 12:23:00
rt
...全文
135 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2010-09-04
  • 打赏
  • 举报
回复
看《计算机程序设计艺术》第二卷 多精度算术
qq644716095 2010-09-04
  • 打赏
  • 举报
回复
#include<iostream>
using namespace std;
char c[1001];
char* mul(char a[],char b[])
{
int lena=strlen(a)-1,lenb=strlen(b)-1,n=0,i,j,t;
int s[10001]={0};
for(i=lena;i>=0;i--)
{
n=lena-i;t=0;
for(j=lenb;j>=0;j--)
{
s[n]=s[n]+(a[i]-48)*(b[j]-48)%10+t;
t=(a[i]-48)*(b[j]-48)/10;
if(s[n]>9)
{
t+=s[n]/10;
s[n]%=10;
}
n++;
}
if(t>0)
s[n]=t;
else
n--;
}
while(!s[n])
n--;
if(n<0)
n=0;
for(i=0;i<=n;i++)
c[i]=s[i]+48;
c[i]=0;
_strrev(c);
return c;
}
int main()
{
char a[1001],b[1001];
while(cin>>a>>b)
cout<<mul(a,b)<<endl;
}
求解释

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧