大数乘法
发布时间:2020-12-14 03:57:13 所属栏目:大数据 来源:网络整理
导读:void multiply(){char str1[1000],str2[1000];cinstr1str2;int len1 = strlen(str1);int len2 = strlen(str2);int len = len1 + len2 + 1;int *A = new int[len1];int *B = new int[len2];int *C = new int[len];for(int i=0;ilen1;i++)A[i] = str1[len1-i-1
void multiply() { char str1[1000],str2[1000]; cin>>str1>>str2; int len1 = strlen(str1); int len2 = strlen(str2); int len = len1 + len2 + 1; int *A = new int[len1]; int *B = new int[len2]; int *C = new int[len]; for(int i=0;i<len1;i++) A[i] = str1[len1-i-1]-'0'; for(int i=0;i<len2;i++) B[i] = str2[len2-i-1]-'0'; for(int i=0;i<len;i++) C[i] = 0; bool flag = false; for(int i=0;i<len1;i++) for(int j=0;j<len2;j++) C[i+j] += A[i] * B[j]; for(int i=0;i<len;i++) { if(C[i]>9) { C[i+1] += C[i]/10; C[i] %= 10; } } for(int i = len-1; i>=0;i--) if(flag) cout<<C[i]; else if(C[i]!=0) { cout<<C[i]; flag = true; } delete []A; delete []B; delete []C; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |