[問題] 請教C++多項式四則運算

看板C_and_CPP (C/C++)作者 (經驗法則)時間15年前 (2011/05/27 08:48), 編輯推噓5(5015)
留言20則, 9人參與, 最新討論串1/1
想請問如何用C++寫多項式四則運算 假設有一個f(x)和g(x) 把兩個做相加相減乘除等動作 因為要達到四種運算的目的 所以我想到的方法是用陣列 比方說f(x)= 3.6+4.8x^2-2.5x^4+1.2x^5 表示成像double f[6] = {3.6 , 0.0 , 4.8 , 0.0 , -2.5 , 1.2};這樣 接著使用迴圈的方法來做運算 像for(i=0 ; i<6 ; i++)這樣 不過對C++實在很苦手 接下來的部份就沒有什麼概念了 尤其是相除取商和相除取餘數 想請問有沒有具體的方向或範例之類的 剛學c++一個多月而已 (汗) 感謝指導!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.171.87.21

05/27 08:53, , 1F
你不覺得應該考慮先乘除後加減之類的?
05/27 08:53, 1F

05/27 08:57, , 2F
<囧> 是多項式...看錯
05/27 08:57, 2F
※ 編輯: p7pp7 來自: 118.171.87.21 (05/27 09:04)

05/27 09:04, , 3F
你的 f(x) 到底想表達什麼?
05/27 09:04, 3F

05/27 09:06, , 4F
你想說的是 f(x) = 3.6 + 4.8*X^2 - 2.5*X^4 + 1.2*X^5 ?
05/27 09:06, 4F

05/27 09:06, , 5F
不好意思 剛才沒有說清楚 就是題目給一f(x)和g(x)兩多項式
05/27 09:06, 5F

05/27 09:06, , 6F
輸出兩多項式的加減乘除後結果
05/27 09:06, 6F

05/27 09:07, , 7F
阿 少打了X!! 抱歉抱歉
05/27 09:07, 7F
※ 編輯: p7pp7 來自: 118.171.87.21 (05/27 09:07)

05/27 09:11, , 8F
我只能說 你自己怎麼做就讓程式一步一步那麼做就好
05/27 09:11, 8F

05/27 09:12, , 9F
去Google一下"大數運算"
05/27 09:12, 9F

05/27 11:54, , 10F
以前有做過這種東西,你要把f()和g()存入兩個陣列內
05/27 11:54, 10F

05/27 11:55, , 11F
然後再把兩個陣列內個別的值相加,最後顯示出來
05/27 11:55, 11F

05/27 11:55, , 12F
我想比較困難的是字串處理,把 1 + 2^2 + 3^3分別存
05/27 11:55, 12F

05/27 11:56, , 13F
入f(x)的陣列內,這裡字串處理比較麻煩一點點
05/27 11:56, 13F

05/27 20:54, , 14F
想法沒錯阿 手算 觀察流程 再試著寫程式
05/27 20:54, 14F

05/27 23:58, , 15F
大一還大二的時候寫過類似的作業...
05/27 23:58, 15F

05/28 00:34, , 16F
把陣列的索引當作 多項次的 羃次,以這觀念再想想吧.
05/28 00:34, 16F

05/28 02:51, , 17F
索引當冪次有時會遇到3x^10000 + 2x^10000之類的相加
05/28 02:51, 17F

05/28 02:52, , 18F
結果有一大堆空間沒用 XD 可以用兩個int的結構存係數/冪次
05/28 02:52, 18F

05/28 08:52, , 19F
樓上你要玩位元運算嗎?...
05/28 08:52, 19F

05/28 14:37, , 20F
樓上bitwise op 高手!
05/28 14:37, 20F
文章代碼(AID): #1DtlJBxs (C_and_CPP)
文章代碼(AID): #1DtlJBxs (C_and_CPP)