[討論] mod數字太大好像會失靈?

看板MATLAB作者 (klain)時間13年前 (2013/01/16 12:48), 編輯推噓2(207)
留言9則, 3人參與, 最新討論串1/1
譬如我用: mod(5^50,3) mod(5e50,3) mod(5^50-1,3) mod(5e50-1,3) 這些的答案都是0 那請問如果我硬是要算大數的餘數怎麼辦? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 71.167.153.152

01/16 12:55, , 1F
C_and_CPP板有提到類似的問題 #1GyO6Vi8
01/16 12:55, 1F

01/16 13:16, , 2F
好像也沒解決問題耶, 因為mod是寫死的啊?
01/16 13:16, 2F

01/16 13:20, , 3F
有啊,簡單來講就是自已拆數字啦。
01/16 13:20, 3F

01/16 13:29, , 4F
mod(sym('5e50'),3),mod(sym('5*10^50'),3)
01/16 13:29, 4F

01/16 13:29, , 5F
mod(sym('5*10^50-1'),3) mod(sym('5^50-1'),3)
01/16 13:29, 5F

01/16 13:37, , 6F
忘了說,要再eval或double回num
01/16 13:37, 6F

01/16 13:37, , 7F
樓上的解法好像真的可以work耶!! :) 想請問一下背後的道理是
01/16 13:37, 7F

01/16 13:37, , 8F
什麼? 怎麼改成symbol符號之後反而就可以了?
01/16 13:37, 8F

01/16 13:38, , 9F
自己拆數字的工作丟給matlab而已
01/16 13:38, 9F
文章代碼(AID): #1GzZ4Zlc (MATLAB)