課程內(nèi)容
《算法案例—秦九韶算法》
知識(shí)探究(一):秦九韶算法的基本思想
思考1:對(duì)于多項(xiàng)式f(x)=x5+x4+x3+x2+x+1,求f(5)的值。若先計(jì)算各項(xiàng)的值,然后再相加,那么一共要做多少次乘法運(yùn)算和多少次加法運(yùn)算?
思考2:在上述問(wèn)題中,若先計(jì)算x2的值然后依次計(jì)算x2·x,(x2·x)·x,((x2·x)·x)·x的值,這樣每次都可以利用上一次計(jì)算的結(jié)果,再將這些數(shù)與x和1相加,那么一共做了多少次乘法運(yùn)算和多少次加法運(yùn)算?
思考3:利用后一種算法求多項(xiàng)式f(x)=anxn+an-1xn-1+……+a1x+a0的值,這個(gè)多項(xiàng)式應(yīng)寫成哪種形式?
思考4:對(duì)于f(x)=(…((anx+an-1)x+an-2)x+…+a1)x+a0,由內(nèi)向外逐層計(jì)算一次多項(xiàng)式的值,其算法步驟如何?
思考5:上述求多項(xiàng)式f(x)=anxn+an-1xn-1+……+a1x+a0的值的方法稱為秦九韶算法,利用該算法求f(x0)的值,一共需要多少次乘法運(yùn)算,多少次加法運(yùn)算?
思考6:在秦九韶算法中,記v0=an,那么第k步的算式是什么?
知識(shí)探究(二):秦九韶算法的程序設(shè)計(jì)
思考1:用秦九韶算法求多項(xiàng)式的值,可以用什么邏輯結(jié)構(gòu)來(lái)構(gòu)造算法?其算法步驟如何設(shè)計(jì)?
思考2:該算法的程序框圖如何表示?
思考3:該程序框圖對(duì)應(yīng)的程序如何表述?
典型例題
例1:已知一個(gè)5次多項(xiàng)式為f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8,用秦九韶算法求f(5)的值。
例2:閱讀下列程序,說(shuō)明它解決的實(shí)際問(wèn)題是什么?
INPUT “x=”;a
n=0
y=0
WHILE n<5
y=y+(n+1)*a^n
n=n+1
WEND
PRINT y
END
小結(jié)
秦九韶算法是求一元多項(xiàng)式的值的一種方法,它的特點(diǎn)是:把求一個(gè)n次多項(xiàng)式的值轉(zhuǎn)化為求n個(gè)一次多項(xiàng)式的值,通過(guò)這種轉(zhuǎn)化,把運(yùn)算的次數(shù)由至多n(n+1)/2次乘法運(yùn)算和n次加法運(yùn)算,減少為n次乘法運(yùn)算和n次加法運(yùn)算,大大提高了運(yùn)算效率。評(píng)價(jià)一個(gè)算法好壞的一個(gè)重要標(biāo)志是運(yùn)算的次數(shù),在一元多項(xiàng)式求值的各種算法中,秦九韶算法至今仍是比較先進(jìn)的算法。
此內(nèi)容正在抓緊時(shí)間編輯中,請(qǐng)耐心等待

常老師
女,中教中級(jí)職稱
從教30年,數(shù)學(xué)教研組長(zhǎng),省級(jí)“先進(jìn)教育工作者”、優(yōu)秀教師,市級(jí)骨干教師、“教學(xué)標(biāo)兵”。