基于python實(shí)現(xiàn)計(jì)算且附帶進(jìn)度條代碼實(shí)例
用python算圓周率π
1.準(zhǔn)備第三方庫(kù)pip
打開(kāi)cmd 輸入代碼:pip install requests ,隨后就會(huì)成功
因?yàn)樾【幰呀?jīng)安裝好了,所以就不把圖截出來(lái)了
2.利用馬青公式求π
3.用python語(yǔ)言編寫出求圓周率到任意位的程序如下:
from math import *
from tqdm import tqdm
from time import *
total,s,n,t=0.0,1,1.0,1.0 clock()
while(fabs(t)>=1e-6):
total+=t n+=2 s=-s t=s/n k=total*4 print('π值是{:.10f}
運(yùn)行時(shí)間為{:.4f}秒'.format(k,clock())) for i in tqdm(range(101)): print('r{:3}%'.format(i),end='') sleep((clock())/100)#用執(zhí)行程序的總時(shí)間來(lái)算出進(jìn)度條間隔的時(shí)間
4.在cmd中運(yùn)行如圖所示:
在IDLE中運(yùn)行執(zhí)行如下代碼:
#- * -coding: utf - 8 - * -from __future__import division#################### 導(dǎo)入時(shí)間模塊import time############### 計(jì)算當(dāng)前時(shí)間time1 = time.time()################ 算法根據(jù)馬青公式計(jì)算圓周率####################number = int(input(’請(qǐng)輸入想要計(jì)算到小數(shù)點(diǎn)后的位數(shù)n:’))# 多計(jì)算10位, 防止尾數(shù)取舍的影響number1 = number + 10# 算到小數(shù)點(diǎn)后number1位b = 10 * * number1# 求含4 / 5 的首項(xiàng)x1 = b * 4 //5# 求含1 / 239 的首項(xiàng)x2 = b // -239# 求第一大項(xiàng)he = x1 + x2# 設(shè)置下面循環(huán)的終點(diǎn), 即共計(jì)算n項(xiàng)number *= 2# 循環(huán)初值 = 3, 末值2n, 步長(zhǎng) = 2for i in range(3, number, 2):#求每個(gè)含1 / 5 的項(xiàng)及符號(hào)x1 //= -25# 求每個(gè)含1 / 239 的項(xiàng)及符號(hào)x2 //= -57121# 求兩項(xiàng)之和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 ’總共耗時(shí):’ + str(time2 - time1) +’s’)
最后顯示結(jié)果如下:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. .NET 中配置從xml轉(zhuǎn)向json方法示例詳解2. ASP錯(cuò)誤捕獲的幾種常規(guī)處理方式3. 詳解php如何合并身份證正反面圖片為一張圖片4. Laravel中數(shù)據(jù)庫(kù)遷移操作的示例詳解5. python 用遞歸實(shí)現(xiàn)通用爬蟲(chóng)解析器6. npm下載慢或下載失敗問(wèn)題解決的三種方法7. Python 如何將字符串每?jī)蓚€(gè)用空格隔開(kāi)8. 使用Spry輕松將XML數(shù)據(jù)顯示到HTML頁(yè)的方法9. ASP編碼必備的8條原則10. python基于opencv批量生成驗(yàn)證碼的示例
