關閉→
當前位置:知科普>學習教育>怎麼將多項式相乘

怎麼將多項式相乘

知科普 人氣:1.34W

這個已經沒法再相除,只有被除式的次數不低於除式的次數時才能列除式計算。 這個題可把結果直接看作分式:2x/(1+x²),如果是為了求值域,可以作變形: 即分子與分母都除以x,而得到:2/[(1/x)+x],然後分母上再用均值定理等。

本文我們將從以下幾個部分來詳細介紹如何將多項式相乘:將兩個單項式相乘、將一個單項式和一個二項式相乘、將兩個二項式相乘、單項式與三項式相乘、兩個多項式相乘、參考

多項式是由常數和變量組成的一串數學表達式。多項式相乘的方法取決每個於多項式內包含的項數。下文中將告訴你如何將多項式相乘。第一部分:將兩個單項式相乘

這個應該是多項式的因式分解問題,目前沒有通用的方法, 但對兩個多項式求公因子,是有方法的,如輾轉相除法

怎麼將多項式相乘

第1步:觀察題目。

用因式分解就能解決了,視具體情況而定.比如x^3-2*x^2+x,先提公因式,x(x^2-2x+1)=x(x+1)(x-1)一般能合併的都是可以進行因式分解的,所以不用怕合併不了.

如果題目中只包含兩個單項式,那就只需要做乘法就可以了,不需要做加減法。

8m+9>0 移項的時候要變號 8m>-9 m>-9/8 乘或除小於零的數時要變號,同時不等號也要改變方向。 如果乘或除一個包含未知數的單項式或多項式時,必須要根據這個單項式或多項式是大於零或是小於零來考慮是否變號。

一個只含兩個單項式的多項式相乘問題通常是下面的形式:(ax) * (by); or(ax) * (bx)

X^3-5X^2+8X-4=(x^3-5x^2+6x)+(2x-4)=X(x-2)(x-3)+2(x-2)=(x-2)[x(x-3)+2] =(x-2)[x^2-3x+2]=(x-2)[(x-2)(x-1)]=(x-1)*(x-2)^2. 你的猜想很正確,只不過你沒有想到用分解因式。

例如:2x * 3y

#include #include #include #define EPS 1E-6typedef struct item {double coefficient;int power;struct item *next;} *POLYNOMIAL,*pItem;POLYNOMIAL Create() { // 創建多項式pItem head,p;double coe;int pwr,iterms,i;head = p = (pItem)m

例如: 2x * 3x

你的意思是自己編寫矩陣乘法吧,否則直接調用matlab得 * 函數就得了 驗證成功,可以運行 x=rand(3,4); y=rand(4,5); [row1, col1] = size(x); [row2, col2] = size(y); if col1 ~= row2 disp(input is error); else result = zeros(row1, col2);

注意這裏的ab代表常數項,xy代表自變量。

當然不是啊,行列式的值是多項式,這道題剛好得到兩個一次多項式相乘得到二次多項式嘛。完全取決於行列式的結果啊,跟2*2完全沒關係。

怎麼將多項式相乘 第2張

第2步:將常數項相乘。

如果這兩個多項式分別有M項和N項,那麼程序的時間複雜度是O(m*n). 主要代碼如下: PolyNode *AddPoly(PolyNode *pa,PolyNode *pb) /*求兩個多項式的和*/ { PolyNode *pc,*p1=pa->next,*p2=pb->next,*p,*tc,*s; pc=(PolyNode *)malloc(sizeof(Pol

常數項是指題目中的數字。將這些數字按照乘法表格中的方法相乘。

多項式與多項式相乘, 將一個多項式的每一項去乘另一個多項式的每一項, 加號與減號的原則:同號得正,異號得負。

換句話説,在這個問題裏,我們把ab相乘。

可以用判別式 如2x^2-x-3=0, 判別式=(-1)^2-4*2*(-3)=1+24=25, 如果是完全平方數,就可以 再試一個,如-x^2/2+5x/2-3=-1/2(x^2-5x+6) [先提取-1/2], 小括號裏,判別式=1,是完全平方,所以原式=-1/2(x-2)(x-3) 以上供參考。

例如:2x * 3y

#include #include #include #define EPS 1E-6typedef struct item {double coefficient;int power;struct item *next;} *POLYNOMIAL,*pItem;POLYNOMIAL Create() { // 創建多項式pItem head,p;double coe;int pwr,iterms,i;head = p = (pItem)m

= (6)(x)(y)

例如:2x * 3x = (6)(x)(x)

將一個多項式因式分解,若分解出來的各個因式都是最簡的形式,即在實數及有理數範圍內不能再分解了,那麼乘積的表達式是唯一的。

怎麼將多項式相乘 第3張

第3步:將自變量相乘。

(2x-4+1)^2+(2y-3)^2 =4 (2x-3)^2+(2y-3)^2 =4 4(x- 3/2)^2+4(y- 3/2)^2 =4 (x-3/2)^2+(y- 3/2)^2 =1 圓心=(3/2, 3/2) 半徑=1

自變量是指等式中的字母。將自變量相乘時,不同的自變量寫在一起就可以,相同的自變量需要寫成冪次形式。

笨辦法,逐一展開 =(ma+mb+na+nb)*(e+f) =mae+maf+mbe+mbf+nae+naf+nbe+nbf

將相同的自變量相乘意味着增加這個自變量的冪次。

就是分解因式: 6x³+8x²-6x-8 =(6x³-6x)+(8x²-8) =6x(x²-1)+8(x²-1) =(x²-1)(6x+8) =2(x²-1)(3x+4) =2(x+1)(x-1)(3x+4)

換句話説,你要把xyxx相乘。

用matlab的符號運算功能: syms x fx1 fx2 fx3 fx1=2+3*x^(-1) fx2=2*x+3*x^(-1)+4*x^(-1) fx3=fx1*fx2

例如:2x * 3y

#include #include #include #define EPS 1E-6typedef struct item {double coefficient;int power;struct item *next;} *POLYNOMIAL,*pItem;POLYNOMIAL Create() { // 創建多項式pItem head,p;double coe;int pwr,iterms,i;head = p = (pItem)m

= (6)(x)(y) = 6xy

例如:2x * 3x = (6)(x)(x)

將一個多項式因式分解,若分解出來的各個因式都是最簡的形式,即在實數及有理數範圍內不能再分解了,那麼乘積的表達式是唯一的。

= 6x^2

怎麼將多項式相乘 第4張

第4步:寫出最後的形式。

將題目完全化簡後,不能再有沒有合併的同類項。

(ax) * (by)的結果應當是abxy。類似的(ax) * (bx)的結果應當是abx^2

例如: 6xy

例如:6x^2

第二部分:將一個單項式和一個二項式相乘

怎麼將多項式相乘 第5張

第1步:觀察問題。

在單項式與二項式相乘的問題中,一個多項式中只含有一個單項,另一個多項式中含有兩項,這兩項間用加號或減號相連。

單項式和二項式相乘的問題通常是下面的形式:(ax) * (bx + cy)

例如: (2x)(3x + 4y)

怎麼將多項式相乘 第6張

第2步:將單項式與二項式中的每一項單獨相乘。

將問題重新寫一遍,寫成用單項式與二項式中的每一項分別相乘的形式。

上一步驟之後,題目的形式應該是:(ax * bx) + (ax * cy)

例如:(2x)(3x + 4y) = (2x)(3x) + (2x)(4y)

怎麼將多項式相乘 第7張

第3步:將常數項相乘。

常數項指的是題目裏的數字項。將常數項按照乘法表格的方法相乘。

換句話説,在這一類問題中,需要將abc相乘。

例如:(2x)(3x + 4y) = (2x)(3x) + (2x)(4y) = 6(x)(x) + 8(x)(y)

怎麼將多項式相乘 第8張

第4步:將變量相乘。

自變量是指等式中的字母。將變量相乘時,不同變量擺在一起即可,如果將相同變量相乘,則需要增加變量的冪次。

換句話説,你需要將方程裏的xy相乘。

例如:(2x)(3x + 4y) = (2x)(3x) + (2x)(4y) = 6(x)(x) + 8(x)(y) = 6x^2 + 8xy

怎麼將多項式相乘 第9張

第5步:寫出最後的答案。

這種類型的多項式相乘的問題一般都很簡單,不需要再合併同類項。

最終答案的形式為:abx^2 + acxy

例如:6x^2 + 8xy

第三部分:將兩個二項式相乘

怎麼將多項式相乘 第10張

第1步:觀察題目。

用因式分解就能解決了,視具體情況而定.比如x^3-2*x^2+x,先提公因式,x(x^2-2x+1)=x(x+1)(x-1)一般能合併的都是可以進行因式分解的,所以不用怕合併不了.

題目中包含兩個多項式,每個多項式中含有兩項,這兩項間以加號或減號連接。

這個類型的多項式相乘的問題通常是下面的形式:(ax + by) * (cx + dy)

例如:(2x + 3y)(4x + 5y)

怎麼將多項式相乘 第11張

第2步:利用FOIL方法來展開每一項。

FOIL是解釋如何將多項式展開的首字母縮寫,分別代表第一項(first),外項(outside),內項(inside)以及最後一項(last)。

展開後多項式相乘的問題轉變為下面的形式:(ax)(cx) + (ax)(dy) + (by)(cx) + (by)(dy)

例如:(2x + 3y)(4x + 5y) = (2x)(4x) + (2x)(5y) + (3y)(4x) + (3y)(5y)

怎麼將多項式相乘 第12張

第3步:將常數項相乘。

常數項指的是題目裏的數字項。將常數項按照乘法表格的方法相乘。

換句話説,在這一類問題中,需要將abcd相乘。

例如:(2x)(4x) + (2x)(5y) + (3y)(4x) + (3y)(5y) = 8(x)(x) + 10(x)(y) + 12(y)(x) + 15(y)(y)

怎麼將多項式相乘 第13張

第4步:將變量相乘。

自變量是指等式中的字母。將變量相乘時,不同變量擺在一起即可,如果將相同變量相乘,則需要增加變量的冪次。

換句話説,你需要將方程裏的xy相乘。

例如: 8(x)(x) + 10(x)(y) + 12(y)(x) + 15(y)(y) = 8x^2 + 10xy + 12xy + 15y^2

怎麼將多項式相乘 第14張

第5步:合併同類項,寫出最後的結果。

這一類問題比較複雜,可能會產生同類項,意味着會出現兩項或更多項具有相同的變量形式。如果出現這種情況,就需要將同類項相加減以得到最後的結果。

最後的結果形式為:acx^2 + adxy + bcxy + bdy^2 = acx^2 + abcdxy + bdy^2

例如:8x^2 + 22xy + 15y^2

第四部分:單項式與三項式相乘

怎麼將多項式相乘 第15張

第1步:觀察問題。

這類問題中含有兩個多項式,一個是單項式,一個含有三項,三項之間由加號或減號相連接。

由單項式與三項式相乘的問題通常是下面的形式:(ay) * (bx^2 + cx + dy)

例如:(2y)(3x^2 + 4x + 5y)

怎麼將多項式相乘 第16張

第2步:將單項式與三項式中的每一項分別相乘。

將問題改寫成單項式與三項式中的每一項分別相乘的形式。

重新寫過之後,方程形式變為(ay)(bx^2) + (ay)(cx) + (ay)(dy)

例如: (2y)(3x^2 + 4x + 5y) = (2y)(3x^2) + (2y)(4x) + (2y)(5y)

怎麼將多項式相乘 第17張

第3步:將常數項相乘。

常數項指的是題目裏的數字項。將常數項按照乘法表格的方法相乘。

同樣的,在這一類問題中,需要將abcd相乘。

例如:(2y)(3x^2) + (2y)(4x) + (2y)(5y) = 6(y)(x^2) + 8(y)(x) + 10(y)(y)

怎麼將多項式相乘 第18張

第4步:將變量相乘。

自變量是指等式中的字母。將變量相乘時,不同變量擺在一起即可,如果將相同變量相乘,則需要增加變量的冪次。

將方程裏的xy相乘。

例如:6(y)(x^2) + 8(y)(x) + 10(y)(y) = 6yx^2 + 8xy + 10y^2

怎麼將多項式相乘 第19張

第5步:寫出最後的答案。

由於一開始方程中包含一個單項式,因此最後的結果中不需要合併同類項。

完成後最後的答案形式為:abyx^2 + acxy + ady^2

用常數取代示例裏面的字母后形式變為:6yx^2 + 8xy + 10y^2

第五部分:兩個多項式相乘

怎麼將多項式相乘 第20張

第1步:觀察問題。

問題裏的兩個多項式都含有三項,三項之間用加號或減號相連接。

假設問題裏面包含兩個二次項和一次項,,方程形式如下:(ax^2 + bx + c) * (dy^2 + ey + f)

例如:(2x^2 + 3x + 4)(5y^2 + 6y + 7)

注意,針對三項式的計算方法對四項式以及包含更多項的多項式都是正確的。

怎麼將多項式相乘 第21張

第2步:將第二個多項式看做一個整體。

將第二個多項式保持成一個整體。

第二個多項式指的是方程裏(dy^2 + ey + f)這一項。

例如: (5y^2 + 6y + 7)

怎麼將多項式相乘 第22張

第3步:將地一個多項式中的每一項與第二個多項式相乘。

將第一個多項式拆開,每一項和第二個多項式整體相乘。

這時將方程按順序排列寫出(ax^2)(dy^2 + ey + f) + (bx)(dy^2 + ey + f) + (c)(dy^2 + ey + f)

例如:(2x^2)(5y^2 + 6y + 7) + (3x)(5y^2 + 6y + 7) + (4)(5y^2 + 6y + 7)

怎麼將多項式相乘 第23張

第4步:將每一項展開。

將方程中新產生的單項式與三項式相乘的形式展開。

到這一步方程可以按順序寫成下面的形式:(ax^2)(dy^2) + (ax^2)(ey) + (ax^2)(f) + (bx)(dy^2) + (bx)(ey) + (bx)(f) + (c)(dy^2) + (c)(ey) + (c)(f)

例如:(2x^2)(5y^2) + (2x^2)(6y) + (2x^2)(7) + (3x)(5y^2) + (3x)(6y) + (3x)(7) + (4)(5y^2) + (4)(6y) + (4)(7)

怎麼將多項式相乘 第24張

第5步:將常數項相乘。

常數項指的是題目裏的數字項。將常數項按照乘法表格的方法相乘。

換句話説,在這一類問題中,需要將abcdef相乘。

例如: 10(x^2)(y^2) + 12(x^2)(y) + 14(x^2) + 15(x)(y^2) + 18(x)(y) + 21(x) + 20(y^2) + 24(y) + 28

怎麼將多項式相乘 第25張

第6步:將變量相乘。

自變量是指等式中的字母。將變量相乘時,不同變量擺在一起即可,如果將相同變量相乘,則需要增加變量的冪次。

換句話説,你需要將方程裏的xy相乘。

例如: 10x^2y^2 + 12x^2y + 14x^2 + 15xy^2 + 18xy + 21x + 20y^2 + 24y + 28

怎麼將多項式相乘 第26張

第7步:合併同類項並寫出最後的答案。

這一類問題通常比較複雜,可能會產生同類項,即包含有相同變量形式的項。如果出現這種情況,你需要將同類項相加減,寫出最後的答案。如果沒有產生同類項,就不用再做加減法了。

例如:10x^2y^2 + 12x^2y + 14x^2 + 15xy^2 + 18xy + 21x + 20y^2 + 24y + 28

參考

http://www.mathsisfun.com/algebra/polynomials-multiplying.html

http://www.sparknotes.com/math/algebra1/polynomials/section3.rhtml

擴展閲讀,以下內容您可能還感興趣。

matlab三個或者多個多項式相乘怎麼做

你的意思是自己編寫矩陣乘法吧,否則直接調用matlab得 * 函數就得了

驗證成功,可以運行

x=rand(3,4);

y=rand(4,5);

[row1, col1] = size(x);

[row2, col2] = size(y);

if col1 ~= row2

disp('input is error');

else

result = zeros(row1, col2);

for ii=1:row1

for jj=1:col2

result(ii,jj) = sum(sum(x(ii,:) .* (y(:, jj))' ));

end

end

end

高一數學 這個式子怎麼變成幾個多項式相乘的形式?

先把前面式子的分子乘出來啊,然後相同的合併

線性代數,幾次多項式怎麼看?兩個2×2的多項式相乘就是二次多項式麼?

當然不是啊,行列式的值是多項式,這道題剛好得到兩個一次多項式相乘得到二次多項式嘛。完全取決於行列式的結果啊,跟2*2完全沒關係。

使用鏈表編寫一個函數,將兩個多項式相乘,並使輸出的多項式按冪次排列

如果這兩個多項式分別有M項和N項,那麼程序的時間複雜度是O(m*n).

主要代碼如下:

PolyNode *AddPoly(PolyNode *pa,PolyNode *pb) /*求兩個多項式的和*/

{ PolyNode *pc,*p1=pa->next,*p2=pb->next,*p,*tc,*s;

pc=(PolyNode *)malloc(sizeof(PolyNode));/*新建頭結點*/

pc->next=NULL;/*pc為新建單鏈表的頭結點*/

tc=pc;/*tc始終指向新建單鏈表的最後結點*/

while (p1!=NULL && p2!=NULL)

{if (p1->expn<p2->expn)/*將*p1結點複製到*s並鏈到pc尾*/

{s=(PolyNode *)malloc(sizeof(PolyNode));

s->coef=p1->coef;s->expn=p1->expn;s->next=NULL;

tc->next=s;tc=s; p1=p1->next;

}

else if(p1->expn>p2->expn)/*將*p2結點複製到*s並鏈到pc尾*/

{s=(PolyNode *)malloc(sizeof(PolyNode));

s->coef=p2->coef;s->expn=p2->expn;s->next=NULL;

tc->next=s;tc=s;p2=p2->next;

}

else /*p1->expn=p2->expn的情況*/

{if (p1->coef+p2->coef!=0) /*序數相加不為0時新建結點*s並鏈到pc尾*/

{s=(PolyNode *)malloc(sizeof(PolyNode));

s->coef=p1->coef+p2->coef; s->expn=p1->expn; s->next=NULL;

tc->next=s; tc=s;

}

p1=p1->next;p2=p2->next;

}

}

if (p1!=NULL) p=p1; /*將尚未掃描完的餘下結點複製並鏈接到pc單鏈表之後*/

else p=p2;

while (p!=NULL)

{s=(PolyNode *)malloc(sizeof(PolyNode));

s->coef=p->coef;s->expn=p->expn;s->next=NULL;

tc->next=s;tc=s;

p=p->next;

}

tc->next=NULL;/*新建單鏈表最後結點的next域置空*/

return pc;

}

PolyNode *MulPoly(PolyNode *pa,float c,int e) /*求多項式與單項式的積*/

{ PolyNode *pc,*p=pa->next,*tc,*s;

pc=(PolyNode *)malloc(sizeof(PolyNode));/*新建頭結點*/

pc->next=NULL;/*pc為新建單鏈表的頭結點*/

tc=pc;/*tc始終指向新建單鏈表的最後結點*/

while (p!=NULL)

{ s=(PolyNode *)malloc(sizeof(PolyNode));

s->coef=p->coef*c;s->expn=p->expn+e;s->next=NULL;

tc->next=s;tc=s;

p=p->next;

}

tc->next=NULL;/*新建單鏈表最後結點的next域置空*/

return pc;

}

PolyNode *MulPoly2(PolyNode *pa,PolyNode *pb) /*求兩個多項式的積*/

{ PolyNode *pc,*p=pa->next,*tc,*s;

pc->next=NULL;

while(p!=NULL)

{tc= MulPoly(pb,p->coef,p->expn); pc=AddPoly(pc,tc); p=p->next;}

return pc;

}

多項式與多項式相乘怎麼分清加號和減號

多項式與多項式相乘,

將一個多項式的每一項去乘另一個多項式的每一項,

加號與減號的原則:同號得正,異號得負。

TAG標籤:#相乘 #多項式 #