圆周率的估算

圆周率的估算有多种方案:

方案一:无穷级数4/1 - 4/3 + 4/5 - 4/7 + ……的和是圆周率π,这一无穷级数前n项的和即可估算圆周率值。

方案二:利用求单位正方形与内接圆面积的比例关系来求的π的近似值。单位圆的1/4面积是一个扇形,它是边长为1单位正方形的一部分。如果能求出 扇形面积s1在正方形面积s中占的比例k=s1/s,它的值也等于π/4,从而得到π的值。

方案三:BBP公式

要求:请选择上述一种方案估算圆周率:

(1)求出的圆周率π与math库中的常数π误差小于10-6的时候停止计算;

    (2)输出估算的圆周率π值。

实验运行:

实验代码:

# 使用无穷级数这个公式计算π值,输入一个小数作为阈值
# 当最后一项的绝对值小于给定阈值时停止计算并输出得到的π值

def leibniz_of_pi(error):
    """接收用户输入的浮点数阈值为参数,返回圆周率值"""
    a = 1
    b = 1
    sum = 0
    while 1 / b > error:
        if a % 2 != 0:
            sum += 1 / b
        else:
            sum -= 1 / b
        a += 1
        b += 2
    pi = sum * 4
    return pi

if __name__ == '__main__':
    threshold = float(input())
    print("{:.8f}".format(leibniz_of_pi(threshold)))  # 保留小数点后八位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值