一元多項式的乘法與加法運算

2022-07-25 05:54:09 字數 1628 閱讀 9314

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

輸入分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

輸出

數字之間用空格隔開,結尾不能出現空格,前係數,後指數;

零多項式輸出0 0

合併同類項時有抵消

上限有零多項式和常數多項式

typedef struct lnode  lnode;
lnode* input(lnode *list, int n) 

return list;

}

lnode * insert(lnode * list, int xs, int zs)            //在有序的多項式鍊錶中插入

else if (p->next->zs < zs)

else if (p->next->zs == zs)

return list;

}

void check(lnode* list) 

if (list->next == null)

return;

}

void output(lnode* list) 

return;

}

#includeusing namespace std;

lnode* input(lnode *list, int n);

void output(lnode* list);

lnode* insert(lnode *list, int xs, int zs);

void check(lnode* list);

int main()

else if (p->zs > q->zs)

else

} if (p == null && q != null)

p1->next = q;

else if (q == null && p != null)

p1->next = p;

//乘法區

p = list1->next;

q = list2->next;

multi->next = null;

while (p)

q = list2 -> next;

p = p->next;

} check(plus); check(multi);

output(multi); cout

}

一元多項式的乘法與加法運算

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

一元多項式的乘法與加法運算

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

一元多項式的乘法與加法運算

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