计算n的阶乘python 计算n的阶乘的流程图

您所在的位置:网站首页 python输入一个正整数计算各位数字之和的函数 计算n的阶乘python 计算n的阶乘的流程图

计算n的阶乘python 计算n的阶乘的流程图

2023-07-09 13:56| 来源: 网络整理| 查看: 265

计算n的阶乘python 计算n的阶乘的流程图_求阶乘的累加和c语言

大整数阶乘

问题描述

输入正整数n,计算出n!的准确值。这里要求(0

问题分析

与通常的阶乘计算方法不一样的是这里的n比较大,使得计算出来的数超过了C语言的整数范围,因此,会使得整数溢出,从而得到错误的结果。对于大整数的阶乘,如何来解决呢?

我们考虑一下,既然这个数太大,一个变量是存储不下了,是否可以用多个变量来存储,分别存储这个数中的一个数,也就是说用数组来存储这个数。假设数组名为a,那么a[0]就是存储的这个数的个位数,a[1]就是存储的这个数的十位数,以前类推。

这样考虑完了后,问题来了,求阶乘需要进行数据的乘法运算,如何使这个数组表示的数与一个数相乘呢?举个例子如果 a[1]=2, a[0]=4, 这个数组就表示了一个为24的整数。如果让这个数组乘以5,如何来操作?

先让a[0]*5 得到 20 这是一个两位数,个位数是0,十位数是2,把个位数0放到 a[0]里面,十位数的2应该进位。接下来是求a[1]*5 得10,加上进位来的2,是12,那么,应该把12后面的2放到a[1],然后1进位。也就是说应该放到a[2]里面。以此类推。

参考程序

#include int main(void){ int a[10000],i,j,l=0,s,n; scanf("%d


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3