java迭代法求圆周率用梯形_【全网最简单Python教程】练习日2--圆周率的推演,抽取基础代码块:多个连续值相加...

大家好,小鱼又来啦!今天给大家带来圆周率的推演,并从中抽取中基础代码块:多个连续值相加的实现方式。

圆周率是数学中非常重要的一个知识点,脱离了多年数学知识的我们,是否记得圆周率是怎么来的了呢?

圆周率是以符号π表示,是用圆周这个字的希腊文的第一个字母来命名的,我们就叫它"派",在18世纪中叶,注明数学家欧拉在其著作《无穷分析引论》中开始使用之后,大家就跟着这样使用了。

在我国,首先是由魏晋时期杰出的数学家刘徽得出了较精确的圆周率的值。他采用“割圆术”一直算到圆内接正192边形,得到圆周率的值是3.14。刘徽的方法是用圆的内接正多边形这个方向逐步逼近圆的。

大家更为熟悉的是我国著名数学家祖冲之所作出的杰出贡献!1500多年前,南北朝时期的祖冲之计算出圆周率π的值在3.1415926和3.1415927之间,并且得出了两个用分数表示的近似值:约率为22/7,密率为355/113。

现今,我们拥有很多的方法来求得圆周率,尤其是到了计算机时代,人们借助计算机的计算能力,更是能够非常容易的求得圆周率的任意位数。

最适合我们练习的计算方法就是使用一个固定的公式,然后用Python来实现这个公式并计算出圆周率啦。

公式: 当k趋近于正无穷时,

19a31ae63f76d803d3a8adc45500f678.png

跟小鱼一起动手实现以下吧!

db35eb0581d3bd71357d4b0a1602a16d.png

思考:

# 观察公式:只有一个变量k,k的范围是k>0,k趋近于无穷大,k为正整数

求k递增1时的加和

加和的求法思考有无内置, 求和函数和格式化写法

# 注意公式的写法

pi = 0
N = 100
for k in range(100):
    pi += (1/16)**k*(4/(8*k+1)-2/(8*k+4)-1/(8*k+5)-1/(8*k+6))
print("圆周率的值是:{}".format(pi))

这个代码块的实现过程是:

分步执行代码块:
pi=0,k=0,
pi=pi+公式值=0+公式值(k=0)
pi=0+公式值(k=0),k=1,
pi=pi+公式值(k=1)=0+公式值(k=0)+公式值(k=1)...
k=100时,
pi=0+公式值(k=0)+公式值(k=1)+...+公式值(k=100)

同时,提醒大家注意8k的代码:不能直接写入8k,而是8*k

观察可得出基础代码块:多个连续值相加的实现方式。

求取(a,b)范围内的对应数值i的相加和。
i=起始值
for i in range(a,b):
    i+=公式
print

有了基础代码块时,当遇到要求复杂的函数时,我们在逐步分解要求时,可以把要求按照基础代码块实现,这样就大大缩短了思考的时间,也能使思路更顺畅。

今天的介绍就到这里啦,下次再和小伙伴们一起玩啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值