大数加减乘除幂模版
大数加 void add(char a[],char b[]) 大数*大数
void? mult(char? a1[],char? b1[]) { ? ? ? ? int? i,k,lena,lenb; ? ? ? ? char? a[1024]={0},b[1024]={0},d[1024]={0}; ? ? ? ? lena=strlen(a1); ? ? ? ? lenb=strlen(b1); ? ? ? ? for(i=0;i<lena;i++) ? ? ? ? ? ? ? ? a[i]=a1[lena-i-1]-'0'; ? ? ? ? for(i=0;i<lenb;i++) ? ? ? ? ? ? ? ? b[i]=b1[lenb-i-1]-'0'; ? ? ? ? for(i=0;i<lena;i++) ? ? ? ? ? ? ? ? for(j=0;j<lenb;j++) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? d[i+j]+=a[i]*b[j]; ? ? ? ? ? ? ? ? ? ? ? ? d[i+j+1]+=d[i+j]/10; ? ? ? ? ? ? ? ? ? ? ? ? d[i+j]%=10; ? ? ? ? ? ? ? ? } ? ? ? ? k=lena+lenb; ? ? ? ? while(!d[k-1]) ? ? ? ? ? ? ? ? k--; ? ? ? ? for(i=0;i<k;i++) ? ? ? ? ? ? ? ? c[i]=d[k-i-1]+'0'; }
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |