高精度算法汇总

#include<bits/stdc++.h>
using namespace std;
int a[202],b[202],c[402];
void chen(int a[],int b[],int c[])
{
	memset(c,0,sizeof(c));
	c[0]=a[0]+b[0];
	for(int i=1;i<=a[0];i++)
	{
		for(int j=1;j<=b[0];j++)
		{
			c[i+j-1]+=a[i]*b[j];
			c[i+j]+=c[i+j-1]/10;
			c[i+j-1]=c[i+j-1]%10;
		}
	}
}
void chu(int a[],int b,int c[])         //高精度除以低精度 
{
	memset(c,0,sizeof(c));
	int x=0;
	c[0]=a[0];
	for(int i=c[0];i>=1;i--)
	{
		x=x*10+a[i];
		c[i]=x/b;
		x=x%b;
	}
}
void  jia(int a[],int b[],int c[])
{
	memset(c,0,sizeof(0));
	c[0]=max(a[0],b[0])+1;
	for(int i=1;i<=c[0]-1;i++)
	{
		if(i<=a[0])
			c[i]+=a[i];
		if(i<=b[0])
			c[i]+=b[i];
		c[i+1]=c[i]/10;
		c[i]=c[i]%10;
	}
} 
void jian(int a[],int b[],int c[])
{
	memset(c,0,sizeof(c));

版权声明:本文为Eric_Tang799原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。