python使用三角迭代计算圆周率PI的方法

yipeiwu_com5年前Python基础

本文实例讲述了python使用三角迭代计算圆周率PI的方法。分享给大家供大家参考。具体如下:

方法1:

复制代码 代码如下:
# Calculating PI using trigonometric iterations
# FB36 - 20130825
import math
x = 1.0
y = 1.0
z = 1.0
w = 1.0
v = 1.0
u = 1.0
for i in range(30):
 
    x = math.sin(x) + x
    y = math.cos(y) + y
    z = math.cos(z) + math.sin(z) + z
    w = math.cos(w) - math.sin(w) + w
    v =  math.cos(v) * math.sin(v) + v
    u =  math.cos(u) / math.sin(u) + u
    print i
    print x, y * 2.0, z * 4.0 / 3.0, w * 4.0, v * 2.0, u * 2.0
    print

方法2:

复制代码 代码如下:
# Calculating PI using trigonometric iterations
# FB36 - 20130901
import math
def sin2(x):
    return ((math.e ** complex(0.0, x) - math.e ** complex(0.0, -x)) / 2.0).imag
def cos2(x):
    return ((math.e ** complex(0.0, x) + math.e ** complex(0.0, -x)) / 2.0).real
x = 1.0
y = 1.0
x2 = 1.0
y2 = 1.0
for i in range(5):
    x = math.sin(x) + x
    y = math.cos(y) + y
    x2 = sin2(x2) + x2
    y2 = cos2(y2) + y2
    print i, x, x2, y * 2.0, y2 * 2.0

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python selenium 弹出框处理的实现

弹出框有两种:页面弹出框(可定位元素能操作)、Windows弹出框(不能直接定位) 一、页面弹出框 等待弹出框出现之后,定位弹出框,操作其中元素 如:  driver = webdr...

python利用MethodType绑定方法到类示例代码

前言 本文主要给大家介绍了关于python用MethodType绑定方法到类的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 对python中MethodTyp...

django富文本编辑器的实现示例

django富文本编辑器的实现示例

最近一段时间都在学django,现在的网站基本都要使用到富文本编辑器,今天就记录下使用django的管理后台的一个富文本编辑器的第三方库 DjangoUeditor 使用方法 1.安装...

详解python算法之冒泡排序

详解python算法之冒泡排序

python之冒泡排序 概念: 重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相...

python实现超市扫码仪计费

python实现超市扫码仪计费

python实现超市扫码仪计费的程序主要是使用超市扫码仪扫商品的条形码,读取商品信息,实现计费功能。主要用到的技术是串口通信,数据库的操作,需要的环境包括:python环境,mysql,...