我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

用Python实现这个函数的结果,利用步长计算

 

import math
s={}
for step in range(1,100):
    a = 1.15
    x = 1   
    for i in range(1,step,1):
        x+=a**i*1/math.factorial(i)
    print(x)
    error=abs(x-math.e**a)
    s[step]=error
print(s)
st = sorted(s.items(), key=lambda x: x[1])
print(f'从1开始,循环到{st[0][0]},即可达最优值')

循环到第19步时就与math.e计算结果相同

def fun(x):
    import math
    a, b, c, n = 1, 1, 1, 1
    while n <= 100:
        a = a * x / n
        b = b + a
        n += 1
        if a < 0.0001:
            break
    print(b)
x = float(input())
fun(x)

近期文章

  • 对于定义一个变量,以下哪种方式比较好?
  • 用Python尽量简单点
  • 请问在把导入R语言中的excel数据转化为数据框形式
  • 想知道为什么我写的这段代码会多出一个100来?
  • Spring 做 JSR-303验证,日期类型用 @DateFormat 还是 @DateTimeFormat?
  • 自适应滤波(转换为c语言)
  • vue+ts中报错,代码如下。
  • python 提问问题,解释一下
  • 自适应滤波(换成c语言怎么写)
  • matlab运行eeglab闪退
  • 请问这段代是什么意思
  • 交换机问题,第一次接触交换机
  • 想请教ViewPager2的Adapter
  • 社区图书管理系统的c语言编写,可以交流一下
  • 模拟网吧计费程序 C++
  • 关于数据库的疑问
  • 云主机安装自己封装的系统是否可行(由于显卡驱动限制,现原win7系统镜像安装完无法满足要求)
  • int * 和 int y[4][5] 的区别怎么看?
  • asp.net增删改查?
  • 汇编的问题,BUILDER对机器码的合成问题

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华