python-计算Π的近似值

1. 我们可以将格里高利公式转换成:Π ≈ 4*(1-1/3+1/5-1/7+…)。   

2. 可以将公式里面的整数1看成1/1 。               

3. 直到最后一项(结束的一项)的绝对值小于给定的精度, 可以当做条件。已经知道条件可以用while循环。     

解决难点:如何实现加减交替

Π/4 = 1 - 1/3 + 1/5 -1/7…

可以这样看:Π/4 = +1/1 - 1/3 +1/5 - 1/7...

分子都是1,重点看分母规律 1 3 5 7(i=1, i = i +2)

1. 设置一个开关变量:flag = 1

2. 循环每执行一次时:flag = -flag

3. 求和的变量:t = 1/d * flag

 程序流程:         

1. flag : 开关变量                                           

2. fen : 分母                                                   

3. t : 每次被求和(被加)的值                     

4. pi : 最终的值                                           

5. fabs() : 求绝对值函数(用之前需要导入math函数(import math)使用fabs()函数: math.fabs())  

6. t = flag*1.0/fen : 中为什么使用1.0,而不是1,因为1/3 产生 0作为整数,而1.0/3 (1./3)= 0.33333...  。这样做是为了确保输出的是浮点数                                                 

7. pi = pi + t : 求和

注意:t的更新问题,如果将  t = flag*1.0/fen 放在循环的最前面,t一开始就是1,但是循环一轮后还是1,也就是用1 进行了两次计算,但flag和fen都变了两次。

代码:

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值