PTA資料結構練習題 一元多項式的乘法與加法運算

2021-10-08 11:26:02 字數 2566 閱讀 8652

設計函式分別求兩個一元多項式的乘積與和。

輸入格式:

輸入分2行,每行分別先給出多項式非零項的個數,再以指數遞降方式輸入乙個多項式非零項係數和指數(絕對值均為不超過1000的整數)。數字間以空格分隔。

輸出格式:

輸出分2行,分別以指數遞降方式輸出乘積多項式以及和多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。零多項式應輸出0 0。

輸入樣例:

4 3 4 -5 2  6 1  -2 0

3 5 20 -7 4 3 1

輸出樣例:

15 24 -25 22 30 21 -10 20 -21 8 35 6 -33 5 14 4 -15 3 18 2 -6 1

5 20 -4 4 -5 2 9 1 -2 0

#include

using std::cin;

using std::cout;

using std::endl;

typedef

struct multiple* polynomial;

struct multiple};

void

attach

(int c,

int e, polynomial* rear)

;//插入節點

polynomial readmultiple

(int n)

;//讀取多項式

polynomial addmulti

(polynomial h1, polynomial h2)

;//多項式相加

polynomial mulmulti

(polynomial h1, polynomial h2)

;//多項式相乘

void

outmulti

(polynomial h)

;//顯示多項式

void

freeall

(polynomial h)

;//釋放節點

intmain()

polynomial readmultiple

(int n)

return head;

}polynomial addmulti

(polynomial h1, polynomial h2)

h1 = h1-

>next;

}else

if(h2-

>index > h1-

>index)

h2 = h2-

>next;

}else

h1 = h1-

>next;

h2 = h2-

>next;}}

for(

;h1;h1 = h1-

>next)

attach

(h1-

>coe,h1-

>index,

&rear)

;for

(;h2;h2 = h2-

>next)

attach

(h2-

>coe,h2-

>index,

&rear)

; rear = h3;

h3 = h3-

>next;

delete rear;

return h3;

}polynomial mulmulti

(polynomial h1, polynomial h2)

pt2 = pt2-

>next;

} polynomial freeh = h3;

h3 = h3-

>next;

polynomial pt1 = h1-

>next;

while

(pt1)

pt2 = pt2-

>next;

} rear = freeh-

>next;

h3 =

addmulti

(h3, rear)

;freeall

(rear)

; pt1 = pt1-

>next;

}delete freeh;

return h3;

}void

outmulti

(polynomial h)

while

(h->next)

cout << h-

>coe <<

' '<< h-

>index;

return;}

void

freeall

(polynomial h)

return;}

void

attach

(int c,

int e, polynomial* rear)

PTA 資料結構 一元多項式求導

7 2 一元多項式求導 20 分 設計函式求一元多項式的導數。以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。3 4 5 2 6 1 2 012 3 10 1 6 ...

資料結構 一元多項式

void initlist polynode l 初始化多項式單鏈表 int getlength polynode l 求多項式單鏈表的長度 polynode getelem polynode l,int i 返回多項式單鏈表中第i個結點的指標 polynode locate polynode l,...

PTA練習題 一元多項式的乘法與加法運算

設計函式分別求兩個一元多項式的乘積與和。輸入格式 輸入分2行,每行分別先給出多項式非零項的個數,再以指數遞降方式輸入乙個多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 輸出分2行,分別以指數遞降方式輸出乘積多項式以及和多項式非零項的係數和指數。數字間以空格分隔,但...