Python之求任意正整数的阶乘方式

 更新时间:2023年08月24日 09:13:57   作者:香饽々  
这篇文章主要介绍了Python之求任意正整数的阶乘方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python求任意正整数的阶乘

阶乘(factorial)是一个数学术语,由基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年提出。

一个正整数n的阶乘是所有小于及等于该数的积,亦即 n!=1×2×3×...×(n-1)×n,写作 n!。0的阶乘为1。

利用python函数可以便利计算任意正整数的阶乘,

代码如下:

#求n的阶乘
n=eval(input())
def fact(n):
    s=1
    for i in range(1,n+1):
        s*=i
    return s
print(fact(n))

或者利用递归方式:

n=eval(input())
def fact(n):
    if n<=1:
        return 1
    else:
        return fact(n-1)*n
print(fact(n))

输入整数用python代码求阶乘

一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。

自然数n的阶乘写作n!。

亦即n!=1×2×3×...×(n-1)×n。

阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。

python代码:

#整数阶乘
# 输入需要求取阶乘的整数
num=int(input("请输入整数:"))#输入的数字的类型是整数型(int)
# 创建一个列表用来保存1-n的整数(非必须,只是为了好看点)
s=[]
fac=1
# 判断输入的数字的正负,还是为0.
if num<0:
    print("负数没有阶乘")
elif num==0:
    print("0的阶乘为1.")
else:
    for i in range(1,num+1):
        fac=fac*i#累乘1-num的整数赋值给fac
        s.append(str(i))#为了美观添加的,如果上面没有定义s这个列表就不需要写。
    print("{}的阶乘为:{}={}".format(num,"*".join(s),fac))
    #如果没有s,就不需要第二个占位{}(左边到右边)。joim:连接列表里面的元素,前面的字符作为连接的字符,
    #需要注意的是列表里面的元素需要先转化为字符形式才能连接。

假如输入的整数为5,输出结果为:

请输入整数:5
5的阶乘为:1*2*3*4*5=120

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • pandas DataFrame 行列索引及值的获取的方法

    pandas DataFrame 行列索引及值的获取的方法

    这篇文章主要介绍了pandas DataFrame 行列索引及值的获取的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 利用Python实现网络运维自动化的实战案例

    利用Python实现网络运维自动化的实战案例

    Python作为一种简洁而强大的编程语言,已经成为网络运维自动化的热门选择,本文将介绍如何利用Python实现网络设备配置管理、监控和故障排除等自动化任务,并提供代码示例,需要的朋友可以参考下
    2024-03-03
  • 对Django项目中的ORM映射与模糊查询的使用详解

    对Django项目中的ORM映射与模糊查询的使用详解

    今天小编就为大家分享一篇对Django项目中的ORM映射与模糊查询的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python根据站点列表绘制站坐标全球分布图的示例

    Python根据站点列表绘制站坐标全球分布图的示例

    这篇文章主要介绍了Python根据站点列表绘制站坐标全球分布图,输入站点列表文件、snx全球站点坐标文件,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • 在Sublime Editor中配置Python环境的详细教程

    在Sublime Editor中配置Python环境的详细教程

    这篇文章主要介绍在sublime编辑器中安装python软件包,以 实现自动完成等功能,并在sublime编辑器本身中运行build,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2020-05-05
  • python 通过xml获取测试节点和属性的实例

    python 通过xml获取测试节点和属性的实例

    下面小编就为大家分享一篇python 通过xml获取测试节点和属性的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • python retrying模块的使用方法详解

    python retrying模块的使用方法详解

    这篇文章主要介绍了python retrying模块的使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • pycharm远程连接vagrant虚拟机中mariadb数据库

    pycharm远程连接vagrant虚拟机中mariadb数据库

    这篇文章主要介绍了pycharm远程连接vagrant虚拟机中mariadb数据库,需要的朋友可以参考下
    2020-06-06
  • Python3访问并下载网页内容的方法

    Python3访问并下载网页内容的方法

    这篇文章主要介绍了Python3访问并下载网页内容的方法,实例分析了Python页面抓取及写入文件的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • python 操作hive pyhs2方式

    python 操作hive pyhs2方式

    今天小编就为大家分享一篇python 操作hive pyhs2方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12

最新评论