OJ刷題記錄 一元多項式的運算 題目編號 463

2021-10-09 21:04:38 字數 1806 閱讀 2737

題目要求:

已知一元多項式:a(x)=a0+a1x+a2x2+a3x3+….anxn, b(x)= b0+b1x+b2x2+b3x3+….bmxm設計演算法實現c(x)=a(x)+b(x)。功能包括輸入多項式a,輸入多項式b,求a和b的和,顯示求和後的結果等操作。本題中,鍊錶的第乙個元素位置為1,鍊錶的資料域有兩個值 :

coef exp

其中coef為係數,exp為指數。

輸入描述

各個命令以及相關資料的輸入格式如下:

輸入多項式a:a,接下來的n行是要輸入的多項式,每一行資料有兩個值,

第乙個值代表係數,第二個值代表指數,當第乙個值為0時,多項式a輸入結束

輸入多項式b:b,接下來的n行是要輸入的多項式,每一行資料有兩個值,

第乙個值代表係數,第二個值代表指數,當第乙個值為0時,多項式b輸入結束

求多項式a和b的和:c

當輸入的命令為e時,程式結束

輸出描述

當輸入的命令為c時,請輸出a和b兩個多項式的和,輸出格式與輸入格式相同

注意,所有的元素均佔一行

輸入樣例

a3 1

1 2-1 10

4 12

-1 100

0 1b

-4 0

1 1-3 2

1 6-1 9

10 12

1 100

0 1c

e輸出樣例

-4 0

4 1-2 2

1 6-1 9

-1 10

14 12

解題思路:

。。。通關**:

#include

using

namespace std;

struct node };

class

polynomial

;polynomial::

polynomial()

polynomial::

~polynomial()

}void polynomial::

insert

(int coef,

int exp)

void polynomial::

print()

}node* polynomial::

gethead()

void

getrestoa

(polynomial &a, polynomial &b)

else

if(pa-

>_exp > pb-

>_exp)

else

else

previousb-

>_next = pb-

>_next;

delete pb;

pb = previousb-

>_next;}}

if(pb !=

null

) previousa-

>_next = pb;

}int

main()

break

;case

'b':

while

(true

)break

;case

'c':

getrestoa

(a, b)

; a.

print()

;break;}

}return0;

}

畢。

一元多項式運算

一 實驗目的 1.熟練掌握c c 語言中指標的操作。2.掌握鍊錶的常用演算法。二 問題描述 一元多項式可以表示為線性表,相應地一元多項式的運算可以用線性表的基本運算來實現。本實驗要求以煉表為儲存結構,設計乙個一元多項式運算器,實現一元多項式的建立 銷毀 複製 列印顯示 四則運算等功能。三 實驗內容 ...

一元多項式的運算

include using namespace std struct infor int main cin word p3 new struct infor cin p3 coef p3 exp while 0 p3 coef if null p a 中沒有 b 的項就直接加入 else 執行加法運...

一元多項式簡單運算

這裡我們來分享一下一元多項式的簡單運算,雖然是簡單運算,但是已經給我們提供了解決複雜運算的思路。我們需要輸入什麼?首先輸入第乙個多項式的項數num1 然後輸入這個多項式各項的係數 xishu 和指數 指數 再輸入第二個多項式的項數num2 然後輸入這個多項式各項的係數 xishu 和指數 zhish...