Python 计算x^n/(n * n!)的值

需要求解的阶乘:
x n n n ! \cfrac{x^n}{nn!} nn!xn
这里我们以x=2.0n=1,2,3....100为例。话不多说,直接上代码:

import numpy as np
import matplotlib.pyplot as plt


def calculateFactorial(x, n):
    factorial = np.ones(len(n))
    for index, i in enumerate(n):
        for j in range(1, i + 1):
            factorial[index] = factorial[index] * j
    factorial = x ** n / (factorial * n)

    return factorial


if __name__ == '__main__':
    x_ = 2.0
    n_ = np.arange(1, 101, dtype=np.int64)    # n从1取到100
    factorial_ = calculateFactorial(x_, n_)
    print(np.where(factorial_ == np.max(factorial_)))
    print("The value of first data point is {0}".format(factorial_[0]))    # 获取第一个数据点的值
    print("The value of second data point is {0}".format(factorial_[1]))   # 获取第二个数据点的值
    print("The value of third data point is {0}".format(factorial_[2]))    # 获取第三个数据点的值

    # 画图
    plt.figure()
    plt.title(r"Figure of $\frac{x^n}{nn!}$")
    plt.plot(n_, factorial_, label=r"$\frac{x^n}{nn!}$")
    plt.legend()
    plt.show()

注意这里只说明一点,当我们定义x_时,它本身应该为整数,但是我们设定其为float类型是因为我们运算最终得到的结果一定的含有小数的,即运算结果是一个float类型。如果此时我们采用整数类型运算,有可能会遇到意想不到的错误。至于这个错误具体是什么,后面有机会了我们会做补充。

最终得到的图像如下:
在这里插入图片描述
码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勤奋的大熊猫

你的鼓励将是我写作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值