91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Python實現計算圓周率π的值到任意位

發布時間:2021-04-07 09:43:01 來源:億速云 閱讀:413 作者:小新 欄目:開發技術

小編給大家分享一下如何使用Python實現計算圓周率π的值到任意位,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

具體如下:

一、需求分析

輸入想要計算到小數點后的位數,計算圓周率π的值。

二、算法:馬青公式

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

這個公式由英國天文學教授約翰·馬青于1706年發現。他利用這個公式計算到了100位的圓周率。馬青公式每計算一項可以得到1.4位的十進制精度。因為它的計算過程中被乘數和被除數都不大于長整數,所以可以很容易地在計算機上編程實現。

如何使用Python實現計算圓周率π的值到任意位

三、python語言編寫出求圓周率到任意位的程序如下:

# -*- coding: utf-8 -*-
from __future__ import division
####################導入時間模塊
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'

運行結果:

請輸入想要計算到小數點后的位數n:20
3.14159265358979323846
總共耗時:9.77699995041s

請輸入想要計算到小數點后的位數n:50
3.14159265358979323846264338327950288419716939937510
總共耗時:2.30099987984s

運行截圖如下:

如何使用Python實現計算圓周率π的值到任意位

如何使用Python實現計算圓周率π的值到任意位

看完了這篇文章,相信你對“如何使用Python實現計算圓周率π的值到任意位”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西吉县| 诏安县| 迁安市| 澄迈县| 天水市| 凤山市| 东兴市| 尚志市| 洱源县| 广饶县| 武山县| 滁州市| 高州市| 观塘区| 集贤县| 洞口县| 奉节县| 北辰区| 龙南县| 阳信县| 甘德县| 重庆市| 九龙坡区| 安西县| 永靖县| 靖远县| 库尔勒市| 富锦市| 麦盖提县| 伊宁县| 会泽县| 宜州市| 鄢陵县| 东城区| 邵阳县| 新巴尔虎右旗| 肥乡县| 喀什市| 仙居县| 凤山市| 绍兴市|