用公式求圆周率Python

img


这个不会写了,不知道怎么转化成代码或者需要什么函数,求指点帮助

def f(n): 
    return (2*n)**2/((2*n-1)*(2*n+1))
pi = 2
for i in range(1000):
    pi *= f(i + 1)
print(pi)

3.140807746030402

img

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7649219
  • 你也可以参考下这篇文章:臭宝股票亏惨了,我一怒之下用Python爬取了证券最新数据,顺便做了波数据可视化
  • 同时,你还可以查看手册:python- 位置或关键字参数 中的内容
  • 除此之外, 这篇博客: 我用Python爬取英雄联盟的皮肤,隔壁家的小弟弟都馋哭了中的 ​ 点击领取.福利💗干货满满 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 需要的话可以后台私信我666

    Python开发环境安装教程

    Python400集自学视频

    软件开发常用词汇

    Python学习路线图

    3000多本Python电子书

    以上就是我的分享,如果有什么不足之处请指出,感谢观看。

  • 您还可以看一下 jeevan老师的Python量化交易,大操手量化投资系列课程之内功修炼篇课程中的 编程语言之Python环境安装小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    这里提供两种方法求解圆周率。

    方法一:利用蒙特卡罗方法

    步骤如下:

    1. 准备工作:在一个单位边长的正方形内接一个半径为1的圆,圆心与正方形中心重合,把它视为由(0,0)到(1,1)的一象限内的圆,而整个正方形相当于该象限内的矩形。

    2. 产生随机点:用垂直于x轴的直线将该正方形分成两个部分,在其内部均匀地随机产生n个点。

    3. 确认点的位置:将这n个点的x,y分别当作圆的左上角方块(0,0)至右下角方块(1,1)内一定位置的坐标来测定其是否在圆内。

    4. 计算统计结果:用圆内的点数与总点数的比值π/4的值近似等于在图形界面内的面积比,即π/4 ≈ 圆内点个数/n。这样π的估计值就求得。

    代码如下:

    import random

    def Pi(n): m = 0 # 计算圆内点数 for _ in range(n): x = random.uniform(0,1) y = random.uniform(0,1) if x2 + y2 < 1: # 判断是否在圆内 m += 1 return 4 * m / n # 计算Pi的值

    print(Pi(10000)) # n为点数,可以根据准确度进行调整

    方法二:利用Wallis公式

    步骤如下:

    1. 准备工作:Wallis公式是一个无穷级数,利用变量x的改变推导Pi,式子如下:

    1. 求解公式:对于以上公式,可以将其分母上下都乘以一个(2n)形成一个通项公式,即式子如下:

    1. 计算结果:利用公式计算 π 的值,如下代码所示:

    def Wallis(n): s = 1 for i in range(1,n+1): t = 2 * i s *= t * t / (t * t - 1) return s * 2

    print(Wallis(10000))

    以上是两种常见的求解圆周率的方法,选择哪种方法主要取决于具体的情况,以及对时间和空间的要求。