加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

大数相乘代码-字符串实现

发布时间:2020-12-14 04:00:45 所属栏目:大数据 来源:网络整理
导读:#includeiostream #include vector using namespace std; void Multiply(char A[],char B[],char C[]) { ?int Asize=strlen(A),Bsize=strlen(B),Csize=strlen(C); ?int index=Csize-1; ?for(int i=Asize-1;i=0;i--) ?{ ??int position=index--,left=0; ??if(

#include<iostream>
#include <vector>
using namespace std;
void Multiply(char A[],char B[],char C[])
{
?int Asize=strlen(A),Bsize=strlen(B),Csize=strlen(C);
?int index=Csize-1;
?for(int i=Asize-1;i>=0;i--)
?{
??int position=index--,left=0;
??if(A[i]=='0') continue;
??for(int j=Bsize-1;j>=0;j--)
??{
???int t=(A[i]-'0')*(B[j]-'0')+left+(C[position]-'0');
???C[position--]=t%10+'0';
???left=t/10;
??}
??if(left) C[position]=left+'0';
?}
}
void show(char * p)
{
?while(*p=='0')p++;
?while(*p!='')
?{
???? cout<<*p;
??p++;
?}
?cout<<endl;
}

void main() { ?while(1) ?{ ?char * a=new char[20];char * b=new char[20]; ?char * c=new char[40]; ?memset(c,'0',39); c[39]=''; ?cin>>a>>b; ?cout<<a<<" * "<<b<<" = "; ?Multiply(a,b,c); ?show(c); ?delete [] a;delete [] b; delete[] c; ?} ? ?::system("pause"); }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读