0  430505  430513  430519  430523  430529  430531  430535  430541  430543  430549  430555  430559  430561  430565  430571  430573  430579  430583  430585  430589  430591  430595  430597  430599  430600  430601  430603  430604  430605  430607  430609  430613  430615  430619  430621  430625  430631  430633  430639  430643  430645  430649  430655  430661  430663  430669  430673  430675  430681  430685  430691  430699  447090 

2.我們以這個(gè)5次多項(xiàng)式函數(shù)為例加以說(shuō)明,設(shè):

f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0

首先,讓我們以5次多項(xiàng)式一步步地進(jìn)行改寫(xiě):

f(x)=(a5x4+a4x3+a3x2+a2x+a1)x+a0

=((a5x3+a4x2+ a3x+a2)x+a1)x+a0

=(((a5x2+a4x+ a3)x+a2)x+a1)x+a0

=((((a5x+a4)x+ a3)x+a2)x+a1)x+a0

上面的分層計(jì)算。只用了小括號(hào),計(jì)算時(shí),首先計(jì)算最內(nèi)層的括號(hào),然后由里向外逐層計(jì)算,直到最外層的括號(hào),然后加上常數(shù)項(xiàng)即可。

 

試題詳情

1.求最大公約數(shù)

(1)輾轉(zhuǎn)相除法

程序框圖與程序語(yǔ)句

程序:

INPUT “m,n=”;m,n

DO

r=m MOD n

m=n

n=r

LOOP UNTIL r=0

PRINT   

END

(2)更相減損術(shù)

更相減損術(shù)程序:

INPUT “請(qǐng)輸入兩個(gè)不相等的正整數(shù)”;a,b

i=0

WHILE a MOD 2=0 AND b MOD 2=0

a=a/2

b=b/2

i=i+1

WEND

DO

IF b<a THEN

t=a

a=b

b=t

END IF

c=a-b

a=b

b=c

LOOP UNTIL a=b

PRINT a^i

END

對(duì)于兩個(gè)正整數(shù)如何選擇合適的方法求他們的最大公約數(shù)

方法
適用范圍及特點(diǎn)
短除法
適合兩個(gè)較小的正整數(shù)或兩個(gè)質(zhì)因數(shù)較少的正整數(shù),簡(jiǎn)便易操作。
窮舉法
適合計(jì)算機(jī)操作,但一一驗(yàn)證過(guò)于繁瑣。
輾轉(zhuǎn)相除法
適用于兩個(gè)較大的正整數(shù),以除法為主,輾轉(zhuǎn)相除法計(jì)算次數(shù)相對(duì)較少,特別當(dāng)兩個(gè)數(shù)字大小差別較大時(shí)計(jì)算次數(shù)較明顯。
 
更相減損術(shù)
適用于兩個(gè)較大的正整數(shù),更相減損術(shù)以減法為主,計(jì)算次數(shù)上相對(duì)于輾轉(zhuǎn)相處法較多。

試題詳情

6]   -3    0    15

[-3   6]    0    15

[-3   0    6]   15

[-3   0    6    15]

用冒泡排序法排序:

6
 
6
 
6
 
6
 
6
 
6
 
6
 
15
 
15
 
15
-3
 
-3
 
0
 
0
 
0
 
15
 
15
 
6
 
6
 
6
0
 
0
 
-3
 
15
 
15
 
0
 
0
 
0
 
0
 
0
15
 
15
 
15
 
-3
 
-3
 
-3
 
-3
 
-3
 
-3
 
-3

題型4:進(jìn)位值

例7.把十進(jìn)制數(shù)89化為三進(jìn)制數(shù),并寫(xiě)出程序語(yǔ)句.

解析:具體的計(jì)算方法如下:

89=3×29+2

29=3×9+2

9=3×3+0

3=3×1+0

1=3×0+1

所以:89(10)=1011001(3)。

點(diǎn)評(píng):根據(jù)三進(jìn)制數(shù)滿三進(jìn)一的原則,可以用3連續(xù)去除89及其所的得的商,然后按倒序的先后順序取出余數(shù)組成數(shù)據(jù)即可。

例8.將8進(jìn)制數(shù)314706(8)化為十進(jìn)制數(shù),并編寫(xiě)出一個(gè)實(shí)現(xiàn)算法的程序。

解析:314706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104902。

所以,化為十進(jìn)制數(shù)是104902。

點(diǎn)評(píng):利用把k進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制數(shù)的一般方法就可以把8進(jìn)制數(shù)314706(8)化為十進(jìn)制數(shù),然后根據(jù)該算法,利用GET函數(shù),應(yīng)用循環(huán)結(jié)構(gòu)可以設(shè)計(jì)程序。

試題詳情

題型1:求最大公約數(shù)

例1.(1)用輾轉(zhuǎn)相除法求123和48的最大公約數(shù)?

(2)用更相減損來(lái)求80和36的最大公約數(shù)?

解析:(1)輾轉(zhuǎn)相除法求最大公約數(shù)的過(guò)程如下:(建立帶余除式)

 123=2×48+27

 48=1×27+21

 27=1×21+6

 21=3×6+3

 6=2×3+0

最后6能被3整除,得123和48的最大公約數(shù)為3。

(2)分析:我們將80作為大數(shù),36作為小數(shù),執(zhí)行更相減損術(shù)來(lái)求兩數(shù)的最大公約數(shù)。執(zhí)行結(jié)束的準(zhǔn)則是減數(shù)和差相等。

更相減損術(shù):

因?yàn)?0和36都是偶數(shù),要去公因數(shù)2。

80÷2=40,36÷2=18;

40和18都是偶數(shù),要去公因數(shù)2。

40÷2=20,18÷2=9

下面來(lái)求20與9的最大公約數(shù),

20-9=11

11-9=2

9-2=7

7-2=5

5-2=3

3-2=1

2-1=1

可得80和36的最大公約數(shù)為22×1=4。

點(diǎn)評(píng):對(duì)比兩種方法控制好算法的結(jié)束,輾轉(zhuǎn)相除法是到達(dá)余數(shù)為0,更相減損術(shù)是到達(dá)減數(shù)和差相等。

例2.設(shè)計(jì)一個(gè)算法,求出840與1764的最大公因數(shù)。

解析:我們已經(jīng)學(xué)習(xí)過(guò)了對(duì)自然數(shù)的素因數(shù)分解的方法,下面的算法就是在此基礎(chǔ)上設(shè)計(jì)的。

解題思路如下:

首先對(duì)兩個(gè)數(shù)進(jìn)行素因數(shù)分解:

840=23×3×5×7,1764=22×32×72

其次,確定兩個(gè)數(shù)的公共素因數(shù):2,3,7。

接著確定公共素因數(shù)的指數(shù):對(duì)于公共素因數(shù)2,840中為23,1764中為22,應(yīng)取較少的一個(gè)22,同理可得下面的因數(shù)為3和7。

算法步驟:

第一步:將840進(jìn)行素?cái)?shù)分解23×3×5×7;

第二步:將1764進(jìn)行素?cái)?shù)分解22×32×72;

第三步:確定它們的公共素因數(shù):2,3,7;

第四步:確定公共素因數(shù)2,3,7的指數(shù)分別是:2,1,1;

第五步:最大公因數(shù)為22×31×71=84。

點(diǎn)評(píng):質(zhì)數(shù)是除1以外只能被1和本身整除的正整數(shù),它應(yīng)該是無(wú)限多個(gè),但是目前沒(méi)有一個(gè)規(guī)律來(lái)確定所有的質(zhì)數(shù)。

題型2:秦九韶算法

例3.(2005北京,14)已知n次多項(xiàng)式,如果在一種算法中,計(jì)算(k=2,3,4,…,n)的值需要k-1次乘法,計(jì)算的值共需要9次運(yùn)算(6次乘法,3次加法),那么計(jì)算的值共需要        次運(yùn)算。下面給出一種減少運(yùn)算次數(shù)的算法:(k=0, 1,2,…,n-1).利用該算法,計(jì)算的值共需要6次運(yùn)算,計(jì)算的值共需要     次運(yùn)算。

答案:65;20。

點(diǎn)評(píng):秦九韶算法適用一般的多項(xiàng)式f(x)=anxn+an-1xn-1+….+a1x+a0的求值問(wèn)題。直接法乘法運(yùn)算的次數(shù)最多可到達(dá),加法最多n次。秦九韶算法通過(guò)轉(zhuǎn)化把乘法運(yùn)算的次數(shù)減少到最多n次,加法最多n次。

例4.已知多項(xiàng)式函數(shù)f(x)=2x5-5x4-4x3+3x2-6x+7,求當(dāng)x=5時(shí)的函數(shù)的值。

解析:把多項(xiàng)式變形為:f(x)= 2x5-5x4-4x3+3x2-6x+7

=((((2x-5)x-4)x+3)x-6)x+7

計(jì)算的過(guò)程可以列表表示為:

多項(xiàng)式x系數(shù)
2
-5
-4
3
-6
7
運(yùn)算
運(yùn)算所得的值

10
25
105
540
2670
+
變形后x的"系數(shù)"
2
5
21
108
534
2677
*5

最后的系數(shù)2677即為所求的值。

算法過(guò)程:

v0=2

v1=2×5-5=5

v2=5×5-4=21

v3=21×5+3=108

v4=108×5-6=534

v5=534×5+7=2677

點(diǎn)評(píng):如果多項(xiàng)式函數(shù)中有缺項(xiàng)的話,要以系數(shù)為0的項(xiàng)補(bǔ)齊后再計(jì)算。

題型三:排序

例4.試用兩種排序方法將以下8個(gè)數(shù):7,1,3,12,8,4,9,10。按照從大到小的順序進(jìn)行排序。

解析:可以按照直接插入排序和冒泡排序這兩種方法的要求,結(jié)合圖形,分析寫(xiě)出。

直接插入法排序:

7]  1  3  12  8  4  9  10

[7  1]  3  12  8  4  9  10

[7  3  1]  12  8  4  9  10

[12  7  3   1]  8  4  9  10

[12  8  7   3  1]  4  9  10

[12  8  7   4   3  1]  9  10

[12  9  8   7   4  3  1]  10

[12  10  9   8   7   4  3  1] 

冒泡排序

7
 
7
 
7
 
7
 
7
 
7
 
7
 
7
1
1
3
 
3
 
3
 
3
 
3
 
3
3
3
1
 
12
 
12
 
12
 
12
 
12
12
12
12
 
1
 
8
 
8
 
8
 
8
8
8
8
 
8
 
1
 
4
 
4
 
4
4
4
4
 
4
 
4
 
1
 
9
 
9
9
9
9
 
9
 
9
 
9
 
1
 
10
10
10
10
 
10
 
10
 
10
 
10
 
 

第一趟

7
 
7
 
12
 
12
 
12
 
12
3
 
12
 
8
 
8
 
9
 
10
12
 
8
 
7
 
9
 
10
 
9
8
 
4
 
9
 
10
 
8
 
8
4
 
9
 
10
 
7
 
7
 
7
9
 
10
 
4
 
4
 
4
 
4
10
 
3
 
3
 
3
 
3
 
3
1
 
1
 
1
 
1
 
1
 
1

第2趟  第3趟   第4趟   第5趟  第6趟

點(diǎn)評(píng):直接插入法和冒泡法排序是常見(jiàn)的排序方法,通過(guò)該例,我們對(duì)比可以發(fā)現(xiàn),直接插入排序比冒泡排序更有效一些,執(zhí)行的操作步驟更少一些。

例6.給出以下四個(gè)數(shù):6,-3,0,15,用直接插入法排序?qū)⑺鼈儼磸男〉酱蟮捻樞蚺帕校妹芭莘▽⑺鼈儼磸拇蟮叫〉捻樞蚺帕小?/p>

分析:不論從大到小的順序還是按從大到小的順序,都可按兩種方法的步驟進(jìn)行排序。

解析:

直接插入排序法:

試題詳情

4.進(jìn)位制

(1)概念

進(jìn)位制是一種記數(shù)方式,用有限的數(shù)字在不同的位置表示不同的數(shù)值?墒褂脭(shù)字符號(hào)的個(gè)數(shù)稱為基數(shù),基數(shù)為n,即可稱n進(jìn)位制,簡(jiǎn)稱n進(jìn)制,F(xiàn)在最常用的是十進(jìn)制,通常使用10個(gè)阿拉伯?dāng)?shù)字0-9進(jìn)行記數(shù)。

對(duì)于任何一個(gè)數(shù),我們可以用不同的進(jìn)位制來(lái)表示。比如:十進(jìn)數(shù)57,可以用二進(jìn)制表示為111001,也可以用八進(jìn)制表示為71、用十六進(jìn)制表示為39,它們所代表的數(shù)值都是一樣的。

一般地,若k是一個(gè)大于一的整數(shù),那么以k為基數(shù)的k進(jìn)制可以表示為:

而表示各種進(jìn)位制數(shù)一般在數(shù)字右下腳加注來(lái)表示,如111001(2)表示二進(jìn)制數(shù),34(5)表示5進(jìn)制數(shù)。

(2)進(jìn)位制間的轉(zhuǎn)換

關(guān)于進(jìn)位制的轉(zhuǎn)換,教科書(shū)上以十進(jìn)制和二進(jìn)制之間的轉(zhuǎn)換為例講解,并推廣到十進(jìn)制和其它進(jìn)制之間的轉(zhuǎn)換。這樣做的原因是,計(jì)算機(jī)是以二進(jìn)制的形式進(jìn)行存儲(chǔ)和計(jì)算數(shù)據(jù)的,而一般我們傳輸給計(jì)算機(jī)的數(shù)據(jù)是十進(jìn)制數(shù)據(jù),因此計(jì)算機(jī)必須先將十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù),再處理,顯然運(yùn)算后首次得到的結(jié)果為二進(jìn)制數(shù),同時(shí)計(jì)算機(jī)又把運(yùn)算結(jié)果由二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)輸出。

非十進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)比較簡(jiǎn)單,只要計(jì)算下面的式子值即可:

第一步:從左到右依次取出k進(jìn)制數(shù)各位上的數(shù)字,乘以相應(yīng)的k的冪,k的冪從n開(kāi)始取值,每次遞減1,遞減到0,即;

第二步:把所得到的乘積加起來(lái),所得的結(jié)果就是相應(yīng)的十進(jìn)制數(shù)。

十進(jìn)制數(shù)轉(zhuǎn)換成非十進(jìn)制數(shù)

把十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù),教科書(shū)上提供了“除2取余法”,我們可以類(lèi)比得到十進(jìn)制數(shù)轉(zhuǎn)換成k進(jìn)制數(shù)的算法“除k取余法”。

非十進(jìn)制之間的轉(zhuǎn)換

一個(gè)自然的想法是利用十進(jìn)制作為橋梁。教科書(shū)上提供了一個(gè)二進(jìn)制數(shù)據(jù)與16進(jìn)制數(shù)據(jù)之間的互化的方法,也就是先有二進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制數(shù),再由十進(jìn)制數(shù)轉(zhuǎn)化成為16進(jìn)制數(shù)。

試題詳情

7.將新數(shù)據(jù)列中的第7個(gè)數(shù)97與右邊相鄰的數(shù)49進(jìn)行比較,因?yàn)?9<97,97應(yīng)下沉,所以順序改變,得到新的數(shù)據(jù)列:

{38,49,65, 76, 13,97, 49,27}

我們把上述過(guò)程稱為一趟排序。其基本特征是最大的數(shù)據(jù)沉到底,即排在最左邊位置上的數(shù)據(jù)是數(shù)組中最大的數(shù)據(jù)。反復(fù)執(zhí)行上面的步驟,就能完成排序工作,排序過(guò)程不會(huì)超過(guò)7趟。這種排序的方法稱為冒泡排序。

上面的分析具有一般性,如果數(shù)據(jù)列有n個(gè)數(shù)據(jù)組成,至多經(jīng)過(guò)n-1趟排序,就能完成整個(gè)排序過(guò)程。

試題詳情

6.將新數(shù)據(jù)列中的第6個(gè)數(shù)97與右邊相鄰的數(shù)27進(jìn)行比較,因?yàn)?7<97,97應(yīng)下沉,所以順序改變,得到新的數(shù)據(jù)列:

{38,49,65, 76, 13,97,27,49}

試題詳情

5.將新數(shù)據(jù)列中的第5個(gè)數(shù)97與右邊相鄰的數(shù)13進(jìn)行比較,因?yàn)?3<97,97應(yīng)下沉,所以順序改變,得到新的數(shù)據(jù)列:

{38,49,65, 76, 13,97,27,49}

試題詳情

4.將新數(shù)據(jù)列中的第4個(gè)數(shù)97與右邊相鄰的數(shù)76進(jìn)行比較,因?yàn)?6<97,97應(yīng)下沉,所以順序不變,得到新的數(shù)據(jù)列:

{38,49,65, 76,97,13,27,49}

試題詳情

3.將新數(shù)據(jù)列中的第3個(gè)數(shù)65與右邊相鄰的數(shù)97進(jìn)行比較,因?yàn)?7>65,所以順序不變,得到新的數(shù)據(jù)列:

{38,49,65,97,76,13,27,49}

試題詳情


同步練習(xí)冊(cè)答案