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

11.大数相乘 (20分)

发布时间:2020-12-14 02:59:21 所属栏目:大数据 来源:网络整理
导读:题目内容: 一个整型变量只能用来存贮较小的n!的值,当 n 较大时,可将阶乘值中的每一个数字放在一个一维数组的一个元素中。使用这方法,打印n!的值; 输入描述 整数n 输出描述 n!的值 输入样例 18 输出样例 6402373705728000 #include iostreamusing namesp
题目内容:
 一个整型变量只能用来存贮较小的n!的值,当 n 较大时,可将阶乘值中的每一个数字放在一个一维数组的一个元素中。使用这方法,打印n!的值;

输入描述
整数n

输出描述
n!的值

输入样例
18

输出样例

6402373705728000

#include <iostream>
using namespace std;
int main(){
	int a[100]={0},n;
	cin>>n;
	int i,j,k,ws=1;
	a[0]=a[1]=1;
	for(i=1;i<=n;i++){
		for(j=1;j<=ws;j++)
			a[j]=a[j]*i;
		for(j=1;j<=ws;j++){
			if(a[j]>10){
				for(k=0;k<=ws;k++){
					if(a[ws]>9){
						ws++;
					}
					a[k+1]+=a[k]/10;
					a[k]=a[k]%10;
				}
			}
		}		
	}
	for(i=ws;i>=1;i--)
		cout<<a[i];
	return 0;	
}

(编辑:李大同)

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

    推荐文章
      热点阅读