用js做的因式分解函数,最后输出多了一个undefined

JavaScript08

用js做的因式分解函数,最后输出多了一个undefined,第1张

function yinshifenjie(n) {

    i = 2

    if (n == 1) {

        document.write("1")

        return

    } else {

        while (n > 1) {

            var a

            a = n % i

            if (a == 0) {

                n = n / i

                document.write(i + "*")

                yinshifenjie(n)

                break

            } else

                i++

        }

    }

}

yinshifenjie(20)

没看到有undefined,是不是还有其他代码?

在学习因式分解的练习前,我们应具有如下解题技巧:

首先,看式子中有没有公因式,若有则需全部提出;若首项为负可先提负号 ;若系数是分数,可先提适当的分数,使剩下的多项式的系数为整数.

接着,根据多项式的项数确定分解应用的公式,两项用平方差法,三项用完全平方式或十字相乘法分解,四项及以上需分组分解,最后,在完成因式分解前要判断每个多项式因式能否再次分解 回答者: xyjs11

⑴提公因式法

①公因式:各项都含有的公共的因式叫做这个多项式各项的~.

②提公因式法:一般地,如果多项式的各项有公因式,可以把这个公因式提到括号外面,将多项式写成因式乘积的形式,这种分解因式的方法叫做提公因式法.

am+bm+cm=m(a+b+c)

③具体方法:当各项系数都是整数时,公因式的系数应取各项系数的最大公约数;字母取各项的相同的字母,而且各字母的指数取次数最低的. 如果多项式的第一项是负的,一般要提出“-”号,使括号内的第一项的系数是正的.

⑵运用公式法

①平方差公式:. a^2-b^2=(a+b)(a-b)

②完全平方公式: a^2±2ab+b^2=(a±b)^2

※能运用完全平方公式分解因式的多项式必须是三项式,其中有两项能写成两个数(或式)的平方和的形式,另一项是这两个数(或式)的积的2倍.

③立方和公式:a^3+b^3= (a+b)(a^2-ab+b^2).

立方差公式:a^3-b^3= (a-b)(a^2+ab+b^2).

④完全立方公式: a^3±3a^2b+3ab^2±b^3=(a±b)^3

⑤a^n-b^n=(a-b)[a^(n-1)+a^(n-2)b+……+b^(n-2)a+b^(n-1)]

a^m+b^m=(a+b)[a^(m-1)-a^(m-2)b+……-b^(m-2)a+b^(m-1)](m为奇数)

⑶分组分解法

分组分解法:把一个多项式分组后,再进行分解因式的方法.

分组分解法必须有明确目的,即分组后,可以直接提公因式或运用公式.

⑷拆项、补项法

拆项、补项法:把多项式的某一项拆开或填补上互为相反数的两项(或几项),使原式适合于提公因式法、运用公式法或分组分解法进行分解;要注意,必须在与原多项式相等的原则进行变形.

⑸十字相乘法

①x^2+(p q)x+pq型的式子的因式分解

这类二次三项式的特点是:二次项的系数是1;常数项是两个数的积;一次项系数是常数项的两个因数的和.因此,可以直接将某些二次项的系数是1的二次三项式因式分解: x^2+(p q)x+pq=(x+p)(x+q)

②kx^2+mx+n型的式子的因式分解

如果能够分解成k=ac,n=bd,且有ad+bc=m 时,那么

kx^2+mx+n=(ax b)(cx d)

a \-----/b ac=k bd=n

c /-----\d ad+bc=m

※ 多项式因式分解的一般步骤:

①如果多项式的各项有公因式,那么先提公因式;

②如果各项没有公因式,那么可尝试运用公式、十字相乘法来分解;

③如果用上述方法不能分解,那么可以尝试用分组、拆项、补项法来分解;

④分解因式,必须进行到每一个多项式因式都不能再分解为止.

(6)应用因式定理:如果f(a)=0,则f(x)必含有因式(x-a)。如f(x)=x^2+5x+6,f(-2)=0,则可确定(x+2)是x^2+5x+6的一个因式

常用微分方程来描述系统各变量的动态关系。

建立微分方程的步骤如下:

1、分析各元件的工作原理, 明确输入量和输出量;

2、按照信号的传递顺序, 列写各变量的动态关系式;

3、化简(线性化、 小曲中间变量), 写出输入、 输出变量间的数学表达式。

常用元件的微分方程:

电阻: i=u/R ;

电容: i=C*du/dt ; 电感: u=di/dt ;

质量块: F=M*dv/dt ;

弹簧: F=k(x1−x2) ;

阻尼器: F=b(v1−v2) ;

控制系统的传递函数

概念

在经典控制理论中, 一般用传递函数来描述控制系统。 对于一个线性定常系统, 在零初始条件 (零输入+零状态) 下, 输出变量的 Laplace 变换与输入变量的 Laplace 变换之比, 称为该系统的传递函数。 如下图所示:

传递函数是变量 s 的有理分式, 且分子的次数 m 和分母的次数 n 满足m≤n。

可以类比一下 电路中的网络函数。

典型环节

系统的传递函数通常可以表示为:

G(s)=C(s)/R(s)=b0sm+b1sm−1+⋯+bm−1s+bm/a0sn+a1sn−1+⋯+an−1s+an

可进行因式分解, 分解为如下形式:

G(s)=Ksr∏i=1h(τis+1)∏j=1l(τj2s2+2ζjτjs+1)/sv∏i=1k(Tis+1)∏j=1q(Tj2s2+2ZjTjs+1)

一个传递函数可以分解为若干个基本因子的乘积, 每个基本因子就称为 典型环节。

动态结构图

动态结构图是表示组成控制系统的各个元件之间信号传递动态关系的图形。

绘制动态结构图的步骤如下:

1、建立控制系统各元部件的微分方程:

2、对各微分方程在零初始条件下, 进行 Laplace 变换, 并作出各元件结构图;

3、按照系统中各变量的传递顺序, 依次将各元件结构图连接起来。 (通常输入在左, 输出在右)。

动态结构图的等效变换

动态结构图可以做等效变换, 最终求出整个系统的传递函数, 但这种等效变换的方法在框图过于复杂时难以计算, 因此不是很常用。 这种情况下使用下一节的梅森公式会比较容易计算。 下面只列举常用的三种等效变换。

串联

并联

反馈

森公式

对于一个结构图, 有如下概念:

1、前向通道: 从输入到输出的通道, 并且按照箭头的指向经过的元件只有一次;

2、回路: 在结构图中信号闭合流动的回路;

3、回路传递函数: 回路中, 前向传递通道和反馈通道传递函数的乘积, 并且要算上综合点的正负号;

4、互不接触回路: 没有同一信号流过的不同回路。

可以借助如下系统, 分别用等效变换法和梅森公式计算来理解一下: