当前位置:懂科普 >

学习教育

> 怎么将多项式相乘

怎么将多项式相乘

这个已经没法再相除,只有被除式的次数不低于除式的次数时才能列除式计算。 这个题可把结果直接看作分式: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;

}

多项式与多项式相乘怎么分清加号和减号

多项式与多项式相乘,

将一个多项式的每一项去乘另一个多项式的每一项,

加号与减号的原则:同号得正,异号得负。

标签: 多项式 相乘
  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/xuexijiaoyu/ge5m75.html