Re: [問題] 大數運算已回收
※ 引述《hasucker (道地哈薩克人)》之銘言:
: 想請問一下
: 要如何運算像是 300! 的大數
: 用 factorial(300)
: 會跑出 Inf
: 不用太精準沒關係 只要首項, 級數對了就行
: 謝謝!!
後半段的方法太過頭了,你需要的是 Symbolic Math Toolbox
FAC300 = sym('factorial(300)');
A = vpa(FAC300,10);
disp(A);
執行結果:
3.060575122*10^614
---
(下面是後半段,有點過頭的方法)
你需要大數演算法。
請 Google: Variable Precision Integer Arithmetic
下載,並將解壓縮後的資料夾設為 MATLAB 路徑
之後在 MATLAB 的命令列輸入以下:
A = factorial(300);
B = factorial(vpi(300));
disp(A);
disp(B);
執行結果如下:
Inf
306057512216440636035370461297268629388588804173576999416776741259476
533176716867465515291422477573349939147888701726368864263907759003154226
842927906974559841225476930271954604008012215776252176854255965356903506
788725264321896264299365204576448830388909753943489625436053225980776521
270822437639449120128678675368305712293681943649956460498166450227716500
185176546469340112226034729724066333258583506870150169794168850353752137
554910289126407157154830282284937952636580145235233156936482233436799254
594095276820608062232812387383880817049600000000000000000000000000000000
000000000000000000000000000000000000000000
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.247.22
→
06/22 07:23, , 1F
06/22 07:23, 1F
※ 編輯: H45 來自: 140.116.247.22 (06/22 07:24)
討論串 (同標題文章)