题目

问题描述

输入一个正整数n,输出n!的值。其中n!=1*2*3 *...*n.

算法描述

n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。
        将a乘以一个整数k变为将数组A的每一个元素都乘以k,请注意处理相应的进位。首先将a设为1,然后乘2,乘3,当乘到n时,即得到了n!的值。

输入格式

输入包含一个正整数n,n<=1000.

输出格式

输出n!的准确值。

样例输入

10
样例输出

3628800

二,python代码

只要是符合题意的,只要输入输出是对的都成立

# coding=gbk

# 作者:终会为一
# @时间:2023/10/6

n = int(input("输入你所求的阶乘数字"))

ns = 1
for i in range(1, n + 1):
    ns = ns * i
print(ns)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐