栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

PYTHON练习---模拟圆周率

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PYTHON练习---模拟圆周率

模拟圆周率

描述

【前提】:蒙特·卡罗方法,也称统计模拟方法,是一种以概率统计理论为指导的重要的数值计算方法。其原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。通过运用这个方法我们可以让计算机自动的求出圆周率的值。它的原理是让一个正方形内部相切一个圆,圆和正方形的面积之比是π/4。在这个正方形内部,随机产生n个点,计算它们与中心点的距离是否大于圆的半径,以此判断是否落在圆的内部。统计圆内的点数,与n的比值乘以4,就是π的值。理论上,n越大,计算的π值越准。

【ps】使用random.random()方法,生成x轴的值和y轴的值的随机小数,根据x的平方+y的平方小于等于1,计算圆内的点数。

编写程序,自定义撒点数的值(撒点值应大于等于1万)以及seed的值,并计算出圆周率的值,保留5位小数输出。

输入
共一行,第一个值是一个大于一万的正整数,第二个值是seed的值,两个数以逗号隔开。

输出
模拟出的圆周率的值,保留5位小数。

输入样例 1

20000,3
输出样例 1

3.13800
输入样例 2

5000000,2
输出样例 2

3.14167

import random
number,seed=list(map(int,input().split(',')))
count=0
random.seed(seed)
for i in range(number):
    x=random.random()
    y=random.random()
    if x**2 +y**2 <=1:
        count+=1
pi=count/number*4
print(f"{pi:.5f}")

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/840581.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号