100000的階乘等於幾?
一定貼不下。
那是幾?越精確越好。
這是前我也不知道多少位,已經儘力了。。。樓主不然給個郵箱。。。28242294079603478742934215780245355184774949260912248505789180865429779509010630178725517714138311636107136117373619629514749961831239180227
2607340909383242200555696886678403803773794449612683801478751119669063
8604492614453811137009016076686640540717056595226129804195835677890904754151287114083692425153529309626067227103874424608863545436398293174776177553262185112647485586491818038151987716121968151412990230446382406889650835750022964993964236425663527161493520780133120294339305948199604353969420254761018738252172711966524222462978613221897504974019517165315304898748360505669527154801765121621380041098168079734535478517520246219450483450137732631069390935035988598826321052841414001575678609609029165074696613545262530732547530215683071540424970029721042464657713750561658172851551721628867606644818098185845649120912302682768147351225295912356697622384753282615770046948114964848491301953671340001803
1434012380511368173835296047361782363590900324442979506880200425497075817428109200515871132725419763955449965643205610662338099441079965090239835058688262541015044370484320696146208300581622032445457656923187565655142229321450667889684581664034312175421203842609068583814496145348996192319004679779630870771992965230958496008255678095829679128378996667544726319901350598963786237496380026027212712803720071903325318612085809426691843188133798061723913913711424525415380091954821781271034190574047677909474085485853003394617268058261532865988710695226333046882761562985860251045159006884365497700918591314079336300094266872450185905716172910319364909910982282171113034188814194168741059041047545569219
3109386361415798375794169404552793893710938418235248346919097734922951259530713983285625448121791527050465959586546569547790200921783708162223991266656987308397963624962103761492334713276006930239921767351189105777415640911533752373779673916429987450163946585819965929983346660593016478263498604798628721111894863117000772993346787953310220878530290648476822024708772269788272257031012931759997541521860804376624003873537626890537557154004255403202177483686759963361315950042388994996418545778570710502568481184751439776307538196819708180935397940672329203689089227832007636933584065841714984158794858910969459056728997137984158516435496292227504389486181530204393452474630082764988777658865743080878
7541341307659150357225673206408139140297963493742700782840103299929256690860602208331598375281999915671870901630152916471911594792045589654174108627724714953933330259638766452116193127088328263058379407282477564917067772021579613731556638858117457882957118203417140771452947553579710818266975798736591330783868285759503476782370731375931078738540084688378992553663116247942504751261510463457061195247608225899147088973048499714351467705120587222704881123894015563084242325566582234524023250064184629592203477023254431663678834524234786351840868377556610441235314544712469309924054972384215818431201675603905031719972524565657858377580857753875296587611843196719011428331596186371229904364101925104590
1748994857351847545389669361365964528208636002427760428785759972672367893509433104811637811370730616577019136151552105444134731885196163472343099052391233625740331701021209610386118438680635978534912772759311376155125835880861436096960784145435311604736555422959099787360857819765485869182663659301669728836183187527585681057756759660676312618449087454840993232472607816610018772424475784827573256346192806768258063000257029675179576879240770103278259500518336875928686092661235311958664064242828565182177224053623701089273009803661477000764868635971370657482420664188059960191520584169375395729405408485720484183119726536375393922926071223294455461140438306088884554722629825219593225795966766830957
9857138951358761120788065796978940057188190625921073531729251601957756390799947016097255416651336711781688331932184066063656859643281522507837260873659224387757526520078121283388161858675038858400365201667540639277811511186845819938689426257502802207240747022972980730076930535029903070899293296865849997037735704761124158982141278088207158621549760020446798513900334937790154698590288457045409751455845177338481200596998648026235232799445385046007693760873462665901520220612343557675048061628152457315730296639945119682383464375771890306324095940259138092224059791689317622912410177157040072689673241440589535590593375249745966655514635547920171085610446471744694269973501520448136651011317328658643
2989936828058224541791358609128169942609487581745879188901454907687626492445612664268419746466944857011135284594664778705669332906683191211679592843891707763756469830607726946446157098827211286318181633963433982622278777880916301674073605099360426618675379549872595620032582682304219761940526821315661525868341775673460140510890114566065131777384152248294592892196925081707708956060296377411787353266276600324787319187293783780138148270015179795987032424870185876471358109455318476530890730373245779028494198986738943517064149564804990594093006277657735282745329364839230377036786126011877199543323142317134192498839532959815897143069682311169063709880980582350009757935709752159691546529309592501608
2479738289735077387952112287129063299495500386432384240519888302062486812254069645526018535618147051281295752091768276340384493698604605906352768811997566681569277056082605326889293172499439956329666400874341508688535221404681633899139621480723771308435901284853560979632442342585973350024136064096789358728504298340888840958746921848696211391029561651515381700588230134548245065830377204149694087279953207326189844593907231723727735052255558704940483064122335283433887213495400065010574398481729423094997530856483543111830293772490716561605030189313626667623345079741534166322056881156467526472759109811019143837535980537704809834008135152285057337226836595447062332390922930457486275650187757947843
498987225280415960097311960814246862547834343755422597555481309235240136558193776017755934088109000963303958397421025694821620783874290357592017254727444715846046140044194510270763419003650887833693092453198047432240952733659042049742240263388251698461152233898583287134122274617153213259078365060587980289232246909606447432078003236986592855113114869903980249349986809279041484159931077295602847322704184895972861206165699980660386610867052016493513136236920788043122210122503121392164109235821614742938417405799017298472792234283682686814909505412428232007967101665121787974405625949389137918393874266577398559763467490477167026983815685843687786098473949936323756411559800527340981262508306864825955004288877791837291736419244496923601201883907298500879188620836783233188507995965072008776683422507013005596294854606393103380069624098467347994164695253161249953997671822050499089468782759814744217858044874097170953207809085504385450956920743756231288831944722940125039488670913575502257332473876738367139483293732289828946524636863121228946557283941347510819589157387007779695176752335119703329265534778421266266570027049766181864953853219909923091259759694811640851077642611434807299268914349346539454857605257106869858918651742580691777422059993086909809468882105338809016578487947599049669022569590454888371034155259277179239774453783037098135665145523581991042339667457655293798555930104916135230335625559526569339967217627097733279298041203759371224719198209333477119409585282663202769268066031157238861299034208621878166325355481321536610268504222875757939553962467497014572239078365847045293289499770507155663740996278742610818027907662826567616018724872654447589537359664248415140004035243355160717246580053995975199121838757793109682847975327136877873619752837837377418393120646250266434416856075984625217095865069478877643809814353661330582339588416431771281346894539558739378744324346871452806711971955132314946095761557842026550577318447492833968898008257555896557488784130645264539316746764278942435227573107265796931059834422995842201424057304679774602212405288734141477424469078017530907020062874213375531089946676600742032300002775087865092307404516509400069529703745076544404168697130721906884588263616612009466410161830362961971865898857212519224060717964930476325482649194184422301989544526477646743939678206829239845003388111071207767522247708732269641210003760079702787783811101893385698963019971159136157976478881685272970087693001980301815249501679757075543841396640715454223072445393611318254306863929503284571973226103638575196330776279925042810042023419427752189158159145459273173242116675995933714186422216930040055885247918419728624048302993473191734035904167524838595112418678782063891624374317602903236514735810409592809765941106632862615727497789423222502761976964220608236827273542466261996368939948035603900529344794199970963067698035718962449405769015354769578508822613584917131324420488220185921988209694777509872818742828274639482457947188435844333911772650430739095603250584481989958329152600842552729469366441280570587269621682904988951191352336790786111060051015209120967039713728182793629111068584246285456235440826504321480610298252029329341677032574181409862651348120167331160512951768964491670323967516963137993828529460257182175949697417875745297109425902469929703040177472511223642008699424290382418840335922275625480814882226291637343021677898623728155413666319496241022534480155788609603895211808544440777335526130070578416120336310987991111771401598320988817854788792813555806952560841547134494691524723263032935880710450704739780814603039400567185010362717081219219754506014276134877305251991471972769753430808184339643089405084030927767064397671888493013217512771808697087295006206238583094933560979112493714147978984064254874356341794357736101964329763213078379678743926641245929191490403842824749978906470526210635555391816581926867364731290488723864146604869174145005223997618134234558381362870279739583878834979099651375681221673541656904510897247707133330415785510729337651458552344703448056997179446106701279032714736891703818383173639520330665367848806887687756385255206264320243600102651260197784851602252315687148991839679622183668179056748135715581964425953575148990064719872876539134458087056419022465430199468277781270618840554172323776475215427823617606597854099539961446446624098885259213822476168390904240211103454908942876581993436932726614674860640675667049054923469835480528203067528312015354170154599857881843973451002464988383128461727487056576959897104475486269552737374629672439829912000917412744488674841427962411751306383417882375932973143205645845613903772271598515421279407768847826823154842471432147039968967685570781395416498209984055028129094089428434013260871527492108865282737109351726183529352707119656523907459912011808497646488240636155744490224711758613210517215657475432125676219887509412497779869243208229037974726064284826760520600984506178050205115627389137643873444086159882229924003423332161184595193320403316540412688291514100511753460448596185505524615341915318257484883713833849760427038106574940005202735338919869016029837975967217647331908276346343924997078449216790479807019366078989782350768449614733088714797071591506740595547959456162064018476114296322567230062293605586365441951258100297827948991004054870723194211712690430259313093796102732692927761680856122386927979781675068951306559187788643526807866548894560832465822020496125164654896039224551686158940391606498343848236145282968177037372804768989417206317725559101860861977154602275463263350178253053380615391771851991506786006306000924008738771828589626804401810973503118533552715078931725969661130602799569646253452757822037749378750019597087121231892405948119894630981175955603723572628929287716326090193182704731340222797385272327729581354235868618178788069955808885843152732196111704527238420688534609702234616257592420723285326161050926970072616101471000683560930360188049520480014442958151635948812561967380492034501962511094532818004803723098082434750417909449748654216925939828601229469369527145838325788007837521030591823206826572220323155255323811768835000492822370377497934737728228369011575159643390727652710364983295337323930033946538839481030228333762228444582577709580492392521946210246984726588362756094501908898824399133011211614926513626572167851694526791347256298381868194345308110398755763599938145212626702002150981963160909784866541742135242129478412920295107256501865790951203912291902471727360810005738392052181975506805668813053910004067576526866906526002561474972094817015167437656542998229826951162508169114832312945412175791519127466328251688126183638991447097138816267132223823129125663941194564136067329385477162917315618512908484430607693245990723763026301116178053747378913891758998757598529633280493463356582956102213740792037424429618197537941936688331380324619498039991963462932161915696110764936196605118894140062851294953772723341136590580862751277520640981314099562636835246598580689579784044772550754811628482811337744317519530575001865188858428964335457044007544253030882024767563619749720312926732218136201164583839668104984144366844411187119534070911503869892468580074413558922468146116289889731272132120606225803732334745103222665669576686341476560231237331160933733487337244821101674643734617096620211604594345513104771382340640159339835092306046143671481038439355446850111949344262802070905013760949082814504956762899233979383672458542900923874316667606236735254213300573569764332498509463656227896944170448292250944090789692595013231964497659678382105260284723103064125160860313520888843364106607556376692152790597814555581378657700443151664023222869501611091078717179483145592723902136258811264595805940273995373752827067868536583901117695978769073036739505567945676162950586171750765098402157186584427056937835216240848199850116414315421720248093677737625755605464046701885548857882242356570915057525502608350183229104667914375239172948764280995042371085889383891241550342379637017211613818220245543887868102083273692532994046055203735305201054445873899425497591261556507651448089829397335774194574837861736157534975223890837227034338949465954406757506419677115075504118400863192319526524424364579768429989809914310081210341621841492267954064698945756187910605258261488056442533203038223081382045168996123792429049291252566121879821683833819998744588014978872442095428418038494459506469078936162089495222652071931971296580855002918413384440210852889244138050888510633854648961554101005976560270028514960119594943420492710207758628900802288232185660433268110805043342038424530077269199901719733876690094541691221925643812081602673305645603856257456261437816627088689945646846933180743773641840839287353287628585971126829058827010270119029209166401170240844953168184638310945630068978384243870970247567681942330648607165394038194026308514689799188657319373293432995086611028524093246324996904595058572253900772247289679814654438364879973729955242336866935409069312651730505085676889225817279882459517366992175723784086461563849447929731734704009727847915808779089901672507421066211020505402302558066478199998547781233264483140453325179140843853348912485828001038262006782827440194040499103049992755215075308443066013198859107045959604743534832124727555946480981018125988322650151813383581242512191923583861082463846547838146266352133346599391702306187275802374521332625652013103021239847348906254372311365691193318491319246654366696275647251236067636089779707386295836450240774017448588368360998115876819992230119448370876514318830234668809485546594993767289511259101204748230874504005220540499497447718314217253556360966847662834685180251235307906066089920801585507216512161061523369469202695292874104446702684056918566635061049767689390115797964903937123531243425999704629797139276910252054437361179106548693539381559908973365834981444573985742413662340967375166561694816209249155527428072812281956900466089747666652568851901401266006365745390991481072949062530978926801887848569851264528599965451667471918501947677104436063163825561815357564159165739700187258211506928078740280024958790611452495594487504373249007878067870574384881150537013323494685920359150222456330715850544129058017466417424415536337745605596576740926585500134391627570442900302964532979909881727250277314653668129075820369457973944461835444565341944002408890957811937834172447656026825419935039750703421183084671148984205218684515103668421143579654258315250182068256158348749156494680912613634181714871729039187286834367461749228701382013054823777254193834477207269066298634685356145084741654431887217832340188122535083794776773294207943438578841179768707145571321223711533497064067797159592253545807142486730061761061569583115935583086240142726040322359720254289282362190443806623243677825397958999321313804262680161766442842643172178224274132679077214078296141614952214760825522219019643702832981941624112324209761935462316021512373698287390777317561349448171463988378830192603789225599747604019808016685343692475353092577774258142207101518282260656736936349392517128388185198158663178709051222387984078727746089012359078552790037864391959179149420432596820122181529996173540508433118305172331539276300125618535790300041954404113575980298101197179912338236544948649667610177208620351310132271465983593977435727419511166604218991252148461701557960110338837要算的話,可以用斯特林公式來逼近。
100000已經相當大,因此逼近大概是沒有問題的。
再用換底公式,代入計算,得:結果雖然不是完全精確的,但是大概就是這個量級吧。我想你問這個問題,不是想知道具體的數值,是想知道這題怎麼做吧,如果是Coding,可以用Python等工具直接計算,如果是面試或者數學題,那麼了解下斯特林公式是個不錯的主意。給錢就能看到了
用python寫個腳本8秒鐘就算出來了, 但是你要這個幹什麼?
太長,好象貼不下。開頭的部分:
貼個走題的答案,大數運算用數組模擬。以前讀書時寫的,嗯..代碼一點都不高大上
int a[500000]={0};
int LengTh=0;
void fun(int n)
{
int i,c,m;
LengTh=0;
if(n==1)
{
a[0]=1;
LengTh=0;
return;
}
if(n&>=2)
{
fun(n-1);
for(c=0,i=0;i&<=LengTh;i++)
{
m=a[i]*n;
a[i]=(m+c)%10;
c=(m+c)/10;
}
while(c)
{
a[i]=c%10;
i++;
LengTh++;
c=c/10;
}
}
}
在VS中編譯運行,因為遞歸運算太深,不手動調整棧空間的話,只能算到10099!。
想要算100000!的話,最簡單的方法是複製多份不同名函數,分別計算fun1(10000),fun2(20000),fun3(30000),fun4(40000),fun5(50000),fun6(60000),....fun10(100000).注意不要在循環里執行fun,仍然會溢出。本人機器實測,計算10000!耗時約0.6 sec,計算50000!耗時約1.2 min,計算100000!耗時約 6min
---------------------更正----------------------上面的運行時間有誤,Inter Core i3-2120,3.30GHz,10000!耗時0.6 sec,50000!耗時55 sec,100000!耗時3.0min$ python -c "t = str(reduce(lambda x,y:x*y, range(1, 100001))); print
.join([t[i:i+80] for i in range(0,len(t),80)])" | gist
https://gist.github.com/bbb496ef7e1fb6bf2c61
for (int i=1; i&<=100000) ans+=log(i)/log(2)
自行百度wolfram。在對話框中輸入你的式子。wolfram解決開腦洞問題的不二選擇。
根據斯特林公式n!約等於 sqrt{2*pi *n}*{n/e}^n 。
對這個取對數 就約為 1/2*(log_{2}{2*pi} +log_{2}{n})+n*(log_{2}{n}-log_{2}{e}).
剩下的,你就自己算吧。
算了,給你代碼吧。最後那個注釋的行是用來給你小數據驗證的,你把BIG_NUMBER的值改為其他的就可以算了。我的計算結果為1516704.125000。
#include &
#include &
#define NATURE_EXP 2.718281828
#define BIG_NUMBER 5
int main(void)
{
float breadthofresult;
breadthofresult = (log2(2 * PI*BIG_NUMBER) / 2 + BIG_NUMBER*(log2(BIG_NUMBER*1.0) - log2(NATURE_EXP)));
printf("%f
", breadthofresult);
//printf("%f
", exp2f(breadthofresult));
}
推薦閱讀:
※【原著解讀】丹尼特的《心靈的演化》:兩種奇怪的倒置推理
※CS224N Lecture2 筆記
※CS224N Lecture3 筆記
TAG:計算機科學 |