婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用Python手工計算x的算數平方根,來自中國古人的數學智慧

使用Python手工計算x的算數平方根,來自中國古人的數學智慧

熱門標簽:地圖標注多個 鶴壁手機自動外呼系統違法嗎 銀川電話機器人電話 怎么辦理400客服電話 高德地圖標注收入咋樣 企業微信地圖標注 沈陽防封電銷電話卡 B52系統電梯外呼顯示E7 萊蕪電信外呼系統

代碼 

sqrt(x, w=20, Float=False)
x 為非負實數,允許科學計數法
w 是當sqrt(x)為無理數或結果的小數部分很長時的最大位數。默認w=20
Float 當Float=True輸出浮點數,w設置如超出float精度則失效。默認輸出字符串類型

def sqrt(x,w=20,Float=False):
    if x==0 or x==1:return str(x*1.0)
    if x0: raise ValueError('x>=0')
    s,power = str(x),0
    t = s.find('e')
    if t!=-1:
        s=s.split('e')
        s[1] = int(s[1])
        if int(s[1])%2:
            tmp = str(s[0])
            s = [tmp[0]+tmp[2]+tmp[1]+tmp[3:],s[1]-1]
        s,power = *s,
    t = s.find('.')
    if t!=-1:
        if t%2: s='0'+s
        if not len(s)%2: s+='0'
    else:
        if len(s)%2: s='0'+s
    s = s.split('.')
    t = t,len(s[0])//2
    try: s = s[0]+s[1]
    except: s = s[0]
    s = [s[i:i+2] for i in range(len(s)) if not i%2][::-1]
    n = int(s.pop())
    i = 1
    while n>0 and i*i=n: i+=1
    i -= 1
    m,n = str(n-i*i),i
    div = lambda x,y:[(i,y-(20*x+i)*i) for i in range(10) if y>=(20*x+i)*i]
    dot,ret = t[1],str(n)
    while w>0:
        dot -= 1;
        if dot==0: ret += '.'
        if dot=0: w-=1
        m += s.pop() if s else '00'
        q,d = div(n,int(m))[-1]
        m,n = str(d),10*n+q
        ret += str(q)
        if len(s)==0 and d==0:
            if ret.find('.')==-1: ret += '.0'
            break
    if power!=0:
        if power>0: ret += 'e+0'+str(power//2)
        else: ret += 'e-0'+str(power//2)[1:]
    if Float: ret = float(ret)
    return ret

原理

據說這個平方根計算法出自《九章算術》,成書在公元一世紀前后,總結了先秦到兩漢的古代數學成就。古代數學家也真是鬼才,怎么想出來的?

操作過程:

小數點前后2位2位的隔開,不足2位用0補。然后首位試開方,第二位開始反復用公式 (Qn+1 * 20 + Qn) * Qn來試商 ; 下一結果Qn+2 = 10*Qn+1 + Qn。具體流程請自行搜索了解,大致流程如下:

測試 sqrt(n)與n**0.5

>>> for i in range(17):
	print(f'sqrt({i})={sqrt(i)}')
	print(f'{i}**0.5={i**0.5}')	
sqrt(0)=0.0
0**0.5=0.0
sqrt(1)=1.0
1**0.5=1.0
sqrt(2)=1.41421356237309504880
2**0.5=1.4142135623730951
sqrt(3)=1.73205080756887729352
3**0.5=1.7320508075688772
sqrt(4)=2.0
4**0.5=2.0
sqrt(5)=2.23606797749978969640
5**0.5=2.23606797749979
sqrt(6)=2.44948974278317809819
6**0.5=2.449489742783178
sqrt(7)=2.64575131106459059050
7**0.5=2.6457513110645907
sqrt(8)=2.82842712474619009760
8**0.5=2.8284271247461903
sqrt(9)=3.0
9**0.5=3.0
sqrt(10)=3.16227766016837933199
10**0.5=3.1622776601683795
sqrt(11)=3.31662479035539984911
11**0.5=3.3166247903554
sqrt(12)=3.46410161513775458705
12**0.5=3.4641016151377544
sqrt(13)=3.60555127546398929311
13**0.5=3.605551275463989
sqrt(14)=3.74165738677394138558
14**0.5=3.7416573867739413
sqrt(15)=3.87298334620741688517
15**0.5=3.872983346207417
sqrt(16)=4.0
16**0.5=4.0
>>> 
>>> 
>>> sqrt(2,Float=True) == 2**0.5
True
>>> sqrt(3,Float=True) == 3**0.5
True
>>> sqrt(123,Float=True) == 123**0.5
True
>>> 

科學計算法測試

>>> sqrt(1.23e+50)
'1.10905365064094171620e+025'
>>> 1.23e+50**0.5
1.1090536506409416e+25
>>> sqrt(1.23e+51)
'3.50713558335003638336e+025'
>>> 1.23e+51**0.5
3.5071355833500364e+25
>>> sqrt(1.23e-50)
'1.10905365064094171620e-025'
>>> 1.23e-50**0.5
1.1090536506409418e-25
>>> sqrt(1.23e-51)
'3.50713558335003638336e-026'
>>> 1.23e-51**0.5
3.5071355833500365e-26
>>> 

精度測試

>>> sqrt(2,100)
'1.41421356237309504880168872420969807856967187537694
80731766797379907324784621070388503875343276415727'
>>> sqrt(10,500)
'3.16227766016837933199889354443271853371955513932521
68268575048527925944386392382213442481083793002951
87347284152840055148548856030453880014690519596700
15390334492165717925994065915015347411333948412408
53169295770904715764610443692578790620378086099418
28371711548406328552999118596824564203326961604691
31433612894979189026652954361267617878135006138818
62785804636831349524780311437693346719738195131856
78403231241795402218308045872844614600253577579702
82864402902440797789603454398916334922265261206779'
>>> sqrt(123,2000)
'11.09053650640941716205160010260993291846337674245402
00228773128390850016331012896052334560795952104923
97609680678955280792187905933115292625456231839306
77251943912251383176574941199469582196976000438135
40867472202696805822192936674286399297485980945076
78295660716567970352602444301464684924479636459099
14867193001802834979182445692668356613065880869548
25999929108256938950212808340223106891096223696155
58407975630369894453553840958193501976809032496435
98351605065147790119568667920441106521130541775416
88403618227856731042118992185281429619080341919784
91236339758444278806715795552342614568993355758259
00257454016962686033789212494918951906742724387717
86816775058970553110606825772728456503631816127185
97236514403953501043370950197906664648656587402375
47456007486620199478701365589929806411967684259454
52983826062182085142259698311212942126801021825240
49746216571370198706996668818361845968235199845816
69902568378075870406180767774203205467306930309438
16832697339952984981648138573158982379175644441470
50866454616067044997958059525209028336061119869487
42330123683852090419874148218422184948658174234109
57266920859313915279433828848348895422861007776818
60008218306382698626583716405660864687800252861028
31434598682004467042622580768146827595778429365752
19552960734589394860581552514632178318401717998004
12904477515916582731378709757426533231624676879051
21277303475419893966421915682962327965202183939540
07041575389626966661084388718863067485822881867488
00698329255619212758441301451712107894934052042668
13620261632356745839351541875140890682676375675084
74266141686980135645708807796240849684849035273656
15026469136389861472142022294507047846522584450886
83823021978858519029304962564972861464819539784518
43062402845984165814550404820570869649363216162428
32571582506529019502195720558586845830492641836612
65156560044594234298289454649568716622838760718998
14917847213523793754337786561375901264942957378010
57481468928695787589958271831183026476218342365982
72020291818311722410861264031411990033164594115086'
>>> 

1000位到1萬位的耗時測試

>>> from time import time
>>> for i in range(1,11):
	t = time()
	s = sqrt(2,i*1000)
	print(i*1000,':',time()-t) 
1000 : 0.09099745750427246
2000 : 0.5609970092773438
3000 : 1.7489948272705078
4000 : 3.7850000858306885
5000 : 7.239997863769531
6000 : 12.108997106552124
7000 : 19.044997692108154
8000 : 28.065003395080566
9000 : 39.57198643684387
10000 : 54.04999876022339
>>> 

以上就是使用Python手工計算x的算數平方根,更多關于Python手工計算x的算數平方根的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • Python中利用sqrt()方法進行平方根計算的教程
  • Python求算數平方根和約數的方法匯總
  • Python求解平方根的方法
  • Python基于二分查找實現求整數平方根的方法
  • python開根號實例講解

標簽:呼倫貝爾 湘西 安慶 葫蘆島 銀川 呼倫貝爾 烏魯木齊 三亞

巨人網絡通訊聲明:本文標題《使用Python手工計算x的算數平方根,來自中國古人的數學智慧》,本文關鍵詞  使用,Python,手工,計算,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用Python手工計算x的算數平方根,來自中國古人的數學智慧》相關的同類信息!
  • 本頁收集關于使用Python手工計算x的算數平方根,來自中國古人的數學智慧的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产视频一区二区三区在线观看| 精品国产123| 午夜视频一区在线观看| 最新热久久免费视频| 久久久久久亚洲综合| 欧美在线视频不卡| 欧洲一区二区三区在线| 色伊人久久综合中文字幕| jlzzjlzz欧美大全| 手机精品视频在线观看| 亚洲风情在线资源站| 亚洲成人av一区二区三区| 国产欧美一区二区精品性色超碰| 日韩欧美专区在线| a在线播放不卡| 日本不卡123| 亚洲欧美日韩国产中文在线| 亚洲一级二级三级| 欧美一卡在线观看| 久久91精品国产91久久小草| 亚洲精品自拍动漫在线| 亚洲国产精品av| 日本一区二区三区久久久久久久久不| 色综合色狠狠综合色| 91精品在线免费观看| 在线精品视频小说1| 7777精品伊人久久久大香线蕉最新版| 日韩欧美中文字幕公布| 1024国产精品| 偷拍亚洲欧洲综合| 久久精品国产久精国产| 韩国欧美国产一区| 日本欧美一区二区在线观看| 91女人视频在线观看| 成人激情免费电影网址| 麻豆久久一区二区| 成人黄色软件下载| 日韩一区二区三免费高清| 成人欧美一区二区三区白人| 狠狠色丁香婷综合久久| 色婷婷av一区| 日韩免费性生活视频播放| 五月天激情综合| 欧美三级视频在线播放| 欧美高清dvd| 国产欧美一区在线| 国产乱人伦偷精品视频免下载 | 久久先锋影音av鲁色资源| 一区二区三区日韩欧美| 在线免费一区三区| 日韩一区二区影院| 洋洋成人永久网站入口| 国产精品一区二区久久不卡| 丁香另类激情小说| 91精品国产综合久久久久久漫画| 日韩电影在线观看电影| 久久久五月婷婷| 91啪在线观看| 美女国产一区二区三区| 亚洲丝袜另类动漫二区| 国产·精品毛片| 亚洲国产精品成人综合色在线婷婷| 91丨porny丨首页| 欧美另类z0zxhd电影| 中文字幕亚洲电影| 国产凹凸在线观看一区二区| 亚洲精品在线电影| 六月丁香综合在线视频| 久久久久97国产精华液好用吗| 97精品超碰一区二区三区| 亚洲人成在线观看一区二区| 欧美性xxxxx极品少妇| 日韩1区2区日韩1区2区| 亚洲精品免费在线观看| 激情欧美一区二区| 国产亚洲视频系列| 欧洲av一区二区嗯嗯嗯啊| 国产精品福利在线播放| 欧美男女性生活在线直播观看| 天堂精品中文字幕在线| 久久久国产午夜精品| 在线观看av不卡| 91婷婷韩国欧美一区二区| 欧美成人精精品一区二区频| 欧美日韩卡一卡二| 丁香激情综合国产| 久久国产精品第一页| 中文字幕一区日韩精品欧美| 欧美一区二区三区视频在线观看| 成人免费av在线| 一区二区三区四区在线| av电影在线观看一区| 高清国产一区二区| 亚洲成a天堂v人片| 亚洲一级二级在线| 高清不卡一二三区| 午夜电影一区二区| 亚洲精品免费看| 亚洲人成伊人成综合网小说| 欧美日韩中文字幕精品| 在线视频国内一区二区| 国产麻豆日韩欧美久久| 国产精一区二区三区| 成人一二三区视频| 国产伦精一区二区三区| 亚洲欧美综合网| 久久久夜色精品亚洲| 久久亚洲一级片| 国产视频在线观看一区二区三区| 欧美日韩精品一区视频| 色欧美乱欧美15图片| 欧美午夜精品久久久| 欧美性感一区二区三区| 91精品国产乱码久久蜜臀| 精品国免费一区二区三区| 欧美一区二区啪啪| 2023国产一二三区日本精品2022| 欧美一级xxx| 国产欧美日韩激情| 亚洲黄色免费电影| 亚洲人精品午夜| 麻豆91在线播放| 国产精品99久久久久久有的能看 | 日韩午夜三级在线| 国产偷国产偷精品高清尤物| 最新中文字幕一区二区三区| 轻轻草成人在线| 成人国产精品免费观看| 在线日韩一区二区| 国产三级一区二区| 亚洲欧美另类久久久精品2019| 美女精品一区二区| 欧美一级精品在线| 国产九九视频一区二区三区| 欧美激情一区不卡| 国产成人精品影视| 中文字幕欧美三区| 色综合久久久久综合体桃花网| 日本中文字幕一区二区视频| 久久久久国产精品厨房| 国产91精品一区二区麻豆网站| 在线观看日韩精品| 亚洲18色成人| 欧美性猛交xxxxxx富婆| 日韩精品电影在线| 日韩视频不卡中文| 韩国一区二区在线观看| 日韩美女久久久| 成人18精品视频| 精品国产亚洲一区二区三区在线观看| 亚洲国产成人精品视频| 色哟哟精品一区| 亚洲免费观看高清在线观看| 福利视频网站一区二区三区| 国产偷国产偷亚洲高清人白洁| 成人黄色一级视频| 亚洲欧美精品午睡沙发| 91在线观看一区二区| 亚洲一区二区高清| 日韩视频免费直播| 日本网站在线观看一区二区三区| 精品国产一区二区三区不卡| 成人一级片网址| 亚洲女同女同女同女同女同69| 欧美在线观看视频在线| 国产在线一区二区综合免费视频| 国产人久久人人人人爽| 欧洲中文字幕精品| 欧美aa在线视频| 亚洲va欧美va国产va天堂影院| 精品成人一区二区三区四区| 色悠悠亚洲一区二区| 国产人妖乱国产精品人妖| 欧美大片国产精品| 欧美亚洲图片小说| 美女mm1313爽爽久久久蜜臀| 国产日韩影视精品| 精品人伦一区二区色婷婷| 国产在线精品一区二区| 亚洲第一av色| 亚洲尤物视频在线| 久久理论电影网| 欧美人与z0zoxxxx视频| 国产成人免费在线观看| 天堂一区二区在线免费观看| 国产精品免费网站在线观看| 欧美一级一级性生活免费录像| 国产成人精品免费一区二区| 成人av片在线观看| 男人的j进女人的j一区| 555夜色666亚洲国产免| 国内精品久久久久影院薰衣草 | 欧美国产在线观看| 综合欧美亚洲日本| 亚洲精品成人精品456| 亚洲高清视频中文字幕| 蜜乳av一区二区三区| 久久草av在线| 久久国产免费看| 极品少妇一区二区三区精品视频 |