實系數(shù)一員式問題_第1頁
實系數(shù)一員式問題_第2頁
實系數(shù)一員式問題_第3頁
實系數(shù)一員式問題_第4頁
實系數(shù)一員式問題_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、11/6/20211實系數(shù)一員項式問題 (poly問題)11/6/20212問題描述 n 設計表示一元多項式設計表示一元多項式 的模板類,它支持一元多的模板類,它支持一元多項式的下列運算:項式的下列運算:(1)poly()(1)poly():構造函數(shù),初始化一個:構造函數(shù),初始化一個0 0階多項式。階多項式。(2)degree()(2)degree():多項式的階數(shù)。:多項式的階數(shù)。(3)input()(3)input():輸入一個多項式。:輸入一個多項式。(4)output()(4)output():輸出多項式。:輸出多項式。(5)add(b)(5)add(b):多項式加法。:多項式加法。(

2、6)sub(b)(6)sub(b):多項式減法。:多項式減法。(7)mul(b)(7)mul(b):多項式乘法。:多項式乘法。(8)val(x)(8)val(x):多項式在:多項式在x x處的值。處的值。(8)dev(x)(8)dev(x):多項式導數(shù)。:多項式導數(shù)。(8)indev(x)(8)indev(x):多項式不定積分。(常數(shù)項:多項式不定積分。(常數(shù)項c=0c=0)其中其中(3)(3)(8)(8)應重載運算符應重載運算符、+ +、? ?、和和() ()。11/6/20213編程任務 給定k個一元多項式,以及(k-1)個運算符(當然了,這些運算符號只有:+,-,*),然后計算: (1)

3、g(x):把k個多項式按照符號依次計算出最后的多項式; (2)h(x):對求得的g(x)求導,以及求h(xo)的值; (3)q(x):對求得的g(x)求不定積分以及求q(xo)的值.11/6/20214數(shù)據(jù)輸入,輸出展示input.txt output.txt 3 9x4+18x3+12x2+21x 3 36x3+54x2+24x+21 3 3 62.616 4 1 1.8x5+4.5x4+4x3+10.5x2 6 0 1.09382 2 6 2 1 0 13 1+ *d 0.6i 0.30 011/6/20215輸入的數(shù)據(jù)解釋 在輸入欄中,第一個3(即是k)表示接下來有3個數(shù)據(jù)塊,每一個數(shù)據(jù)

4、塊表示一個多項式. 接下來第一個數(shù)據(jù)塊的3,表示會有3組輸入, 每組2個整數(shù)a,b,表示該多項式中的axb.(在此,我們應該可以知道a設置為double型,而因為系數(shù)為非負數(shù),因此b設置int型.) 3組數(shù)據(jù)塊輸完了之后,會有2(即是k-1)個符號,把前面所得的三個多項式按照符號順序依次計算出來,從而得到最后的g(x). 下來的兩行表示:當碰到d時,就求導數(shù)h(x),而面的值即為xo,求h(xo);當碰到i時,就求不定積分q(x),同理求q(xo) 最后的0 0,表示于0 0結束程序輸入.11/6/20216輸出數(shù)據(jù)解釋 輸出有5行.依次表示為:g(x),h(x),h(xo),q(x),q(x

5、o)11/6/20217解題思路 這題用類去做.基本定義書上寫得很清楚.但是要注意重載運算符(+,-,*,=).它們用到了operator這一關鍵字. 解答過程中,其實思路很簡單: 多項式加跟減,主要是首先要讓它們當中冪相同的項相加減.如果遇到一個多項式中少了一些冪次項的話,可以假設該項存在.只是其前面的系數(shù)為0,再進行相加減.結果存在一個類對象中. 多項式相乘中,主要是用一個多項式的每一項依次去乘另一個多項式的每一項.結果存在另一個類對象中. 至于求導跟求不定積分.完全照公式把相應的系數(shù)跟冪該一下,就可以了.11/6/20218簡單的operator展示 fc&fc:operator

6、 =(fc&x) if(sd!=0) delete sd; 釋放指針sd=new notex.n; 給sd分配內(nèi)存for(int i=0;ix.n;i+) n為項的個數(shù)sdi.a=x.sdi.a;sdi.b=x.sdi.b;n=x.n;return *this; 11/6/20219例子:多項式*的程序簡介 fc fc:operator *(fc&x) int k=0; fc num,a; 定義兩個fc對象 a.sd=new note100; for(int i=0;in;i+) k=0; for(int j=0;jx.n;j+)11/6/202110例子:多項式*的程序簡介 a.sdk.a=sdi.a*x.sdj.a; 系數(shù)相乘 a.sdk.b=sdi.b+x.sdj.b; 冪相加 k+; a.n=k; 相乘后的項的個數(shù) num=num+a; return num; 最后得到的多項式 11/6/202111例子:多項式求導 fc&fc:indev() for(int i=0;in;i+) sdi.b=sdi.b+1; 冪加1 sdi.a=sdi.a/sdi.b; 系數(shù)做相應變化 return *this; 11/6/202

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論