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

yipeiwu_com6年前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中self原理实例分析

本文实例讲述了python中self原理。分享给大家供大家参考。具体分析如下: 类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不...

Python解析nginx日志文件

项目的一个需求是解析nginx的日志文件。 简单的整理如下: 日志规则描述 首先要明确自己的Nginx的日志格式,这里采用默认Nginx日志格式: log_format main...

Python散点图与折线图绘制过程解析

Python散点图与折线图绘制过程解析

这篇文章主要介绍了Python散点图与折线图绘制过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在数据分析的过程中,经常需要将...

python MysqlDb模块安装及其使用详解

python MysqlDb模块安装及其使用详解

python调用mysql数据库通常通过mysqldb模块,简单说下如何调用 1.安装驱动 目前有两个MySQL的驱动,我们可以选择其中一个进行安装: 1. MySQL-pytho...

Pandas中resample方法详解

Pandas中的resample,重新采样,是对原样本重新处理的一个方法,是一个对常规时间序列数据重新采样和频率转换的便捷的方法。 方法的格式是: DataFrame.resampl...