題目要求:
已知一元多項式: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...