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程序设计有所帮助。

相关文章

pandas分别写入excel的不同sheet方法

pandas可以非常方便的写数据到excel,那么如何写多个dataframe到不同的sheet呢? 使用pandas.ExcelWriter import pandas as pd...

pytorch实现特殊的Module--Sqeuential三种写法

我就废话不多说了,直接上代码吧! # -*- coding: utf-8 -*- #@Time :2019/7/1 13:34 #@Author :XiaoMa import...

Python实现发送与接收邮件的方法详解

Python实现发送与接收邮件的方法详解

本文实例讲述了Python实现发送与接收邮件的方法。分享给大家供大家参考,具体如下: 一、发送邮件 这里实现给网易邮箱发送邮件功能: import smtplib import tk...

Python随机生成一个6位的验证码代码分享

1. 生成源码 复制代码 代码如下: # -*- coding: utf-8 -*- import random def generate_verification_code(): &n...

python中list循环语句用法实例

本文实例讲述了python中list循环语句用法。分享给大家供大家参考。具体用法分析如下: Python 的强大特性之一就是其对 list 的解析,它提供一种紧凑的方法,可以通过对 li...