C++高精度求n的阶乘,可以算无数位,且不四舍五入,比计算器好用的多

说明
计算n!n!。

输入格式
一个整数 n( 1 \le n \le 100)n(1≤n≤100)。

输出格式
n!n!的精确值。

样例
输入数据 1
20
输出数据 1
2432902008176640000

#include
using namespace std;
int n;
const int mm=210;
int a[mm];
int main()
{
	cin>>n;
	a[1]=1;
	for(int i=1;i<=n;i++)
	{
	    for(int p=0;p<=mm-1;p++)	a[p]*=i;
		for(int p=0;p<=mm-2;p++)
	    {
			int x=a[p];
			a[p]=x%10;
			a[p+1]+=x/10;
	    }
	}
	int p=mm-1;
	while(a[p]==0&&p>0)p--;
	for(;p>0;p--)cout<<a[p];
	return 0;
}

你可能感兴趣的:(C++,牛逼程序,小窍门,c++,开发语言,算法,青少年编程,学习)