Python关于圆周率的计算终于弄懂了,哈哈

做好多事,方法和思维最重要,其他都是靠时间对出来的。

首先我们是不是应该知道计算圆周率的几种方法

1.蒙特卡罗的方法

利用蒙特卡罗分析法可用于估算圆周率,如图,在边长为 2 的正方形内作一个半径为 1 的圆,正方形的面积等于 2×2=4,圆的面积等于 π×1×1=π,由此可得出,正方形的面积与圆形的面积的比值为 4:π。现在让我们用电脑或轮盘生成若干组均匀分布于 0-2 之间的随机数,作为某一点的坐标散布于正方形内,那么落在正方形内的点数 N 与落在圆形内的点数 K 的比值接近于正方形的面积与圆的面积的比值,即,N:K ≈ 4:π,因此,π ≈ 4K/N 。(K是在圆内的,N是总的)

抛出点,我们用随机数库radom

然后需要math库,计算这个点到底在不在这四分之一圆内,在的话,统计数目加一

然后就有两个式子相除得四分之一PI。代码如下。(一时紧张,图放不上来了,只能放源代码了,/厕所哭死ING)

from random import random

from math import sqrt

N=eval(input("请输入次数:"))

K=0

for i in range(1,N+1):

x,y=random(),random()

dist =sqrt(x**2+y**2)

if dist

K=K+1

pi=4*(K/N)

print(pi)

结果:

C:\AppData\venv\Scripts\python.exe C:/AppData/PI.py

请输入次数:1111111

Process finished with exit code 0

注:次数越高结果越精确

以下还有一两种方法,这个就比较简单了,自己都觉得用下面的方法好。

请看下回分析format函数处理字符串等内容。今天这就是一个小白的学习使用python的总结

各位看官可有兴趣一起学。自我感觉这还是很好学的。

只要有向上的心,怎么可能学不会Python

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180319A0NYS300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券