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

大数相乘问题

发布时间:2020-12-14 03:01:54 所属栏目:大数据 来源:网络整理
导读:#include "stdafx.h"#include#includeusing namespace std;void add(string sum,string temp){int len1=sum.size();int len2=temp.size();int jw=0;int i,j;for(i=len1-1,j=len2-1;i=0 j=0;i--,j--){int a=sum[i]-'0';int b=temp[j]-'0';int c=a+b+jw;if(c9)
#include "stdafx.h"#include#includeusing namespace std;void add(string &sum,string temp){int len1=sum.size();int len2=temp.size();int jw=0;int i,j;for(i=len1-1,j=len2-1;i>=0 && j>=0;i--,j--){int a=sum[i]-'0';int b=temp[j]-'0';int c=a+b+jw;if(c>9){sum[i]=c-10+'0';jw=1;}else{sum[i]=c+'0';jw=0;}}if(jw==1){while(jw==1){int a=sum[i]-'0';a++;if(a>9){sum[i]='0'+a-10;jw=1;}else{sum[i]='0'+a;jw=0;}i++}}}string mul(string sum,char ch,int off){int len=sum.size();int a=ch-'0';int jw=0;for(int i=len-1;i>=0;i--){int b=sum[i]-'0';int c=a*b+jw;jw=c/10;int d=c%10;sum[i]=d+'0';}if(jw!=0){sum=string(1,'0'+jw)+sum;}sum=sum+string(off,'0');return sum;}string get_result(string str1,string str2){string sum(200,'0');int len=str2.size();for(int i=len-1;i>=0;i--){string temp=mul(str1,str2[i],len-1-i);add(sum,temp);}int index=sum.find_first_not_of('0');sum=sum.substr(index);return sum;}int main(){string str1="56789";string str2="555432";string result=get_result(str1,str2);cout<<result<<endl;system("pause");return 0; }

(编辑:李大同)

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

    推荐文章
      热点阅读