Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Beispiel für die Berechnung des Werts von Pi für eine beliebige Ziffer

Python-Beispiel für die Berechnung des Werts von Pi für eine beliebige Ziffer

不言
不言Original
2018-05-08 11:52:394543Durchsuche

In diesem Artikel wird hauptsächlich die Python-Methode zur Berechnung des Pi-Werts für jede Ziffer vorgestellt, das Berechnungsprinzip von Pi kurz analysiert und die relevanten Bedienfähigkeiten der Python-Berechnung von Pi anhand von Beispielen analysiert Folgendes

Das Beispiel in diesem Artikel beschreibt die Methode zur Berechnung des Werts von Pi für eine beliebige Ziffer in Python. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

1 Anforderungsanalyse

Geben Sie die Anzahl der Ziffern ein Sie möchten die Zahl auf den Dezimalpunkt genau berechnen, berechnen Sie den Wert von Pi.

2. Algorithmus: Ma-Qing-Formel

π/4=4arctan1/5-arctan1/239

Diese Formel wurde 1706 vom britischen Astronomieprofessor John Mathing entdeckt. Mit dieser Formel berechnete er Pi auf 100 Stellen. Die Formel von Ma Qing kann für jedes berechnete Element eine Genauigkeit von 1,4 Dezimalstellen erreichen. Da der Multiplikand und der Dividend während seiner Berechnung nicht größer als eine lange ganze Zahl sind, kann er leicht auf einem Computer programmiert werden.

3. Das in Python-Sprache geschriebene Programm zum Finden des Pi an einer beliebigen Position lautet wie folgt:

# -*- coding: utf-8 -*-
from __future__ import pision
####################导入时间模块
import time
###############计算当前时间
time1=time.time()
################算法根据马青公式计算圆周率####################
number = int(raw_input('请输入想要计算到小数点后的位数n:'))
# 多计算10位,防止尾数取舍的影响
number1 = number+10
# 算到小数点后number1位
b = 10**number1
# 求含4/5的首项
x1 = b*4//5
# 求含1/239的首项
x2 = b// -239
# 求第一大项
he = x1+x2
#设置下面循环的终点,即共计算n项
number *= 2
#循环初值=3,末值2n,步长=2
for i in xrange(3,number,2):
  # 求每个含1/5的项及符号
  x1 //= -25
  # 求每个含1/239的项及符号
  x2 //= -57121
  # 求两项之和
  x = (x1+x2) // i
  # 求总和
  he += x
# 求出π
pai = he*4
#舍掉后十位
pai //= 10**10
############ 输出圆周率π的值
paistring=str(pai)
result=paistring[0]+str('.')+paistring[1:len(paistring)]
print result
time2=time.time()
print u'总共耗时:' + str(time2 - time1) + 's'

Laufergebnis:

Bitte geben Sie die Anzahl der Stellen ein, die Sie bis auf den Dezimalpunkt berechnen möchten n: 20
3.14159265358979323846
Gesamtzeit: 9.77699995041s

Bitte geben Sie die Anzahl der Stellen ein, die Sie auf den Dezimalpunkt berechnen möchten: 50
3.141592653589793238 46264338327950288419716939937510
Gesamt Benötigte Zeit: 2,30099987984s

Der laufende Screenshot sieht wie folgt aus:

Verwandte Empfehlungen:

Python implementiert den Crawler, der die Proxy-IP-Freigabe mit der Methode festlegt, sich als Browser zu tarnen

Das obige ist der detaillierte Inhalt vonPython-Beispiel für die Berechnung des Werts von Pi für eine beliebige Ziffer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn