国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

算法案例易錯(cuò)題剖析

2013-04-29 17:18陳燕
關(guān)鍵詞:錯(cuò)因易錯(cuò)剖析

算法是計(jì)算機(jī)理論的技術(shù)核心,也是數(shù)學(xué)的最基本內(nèi)容之一.與傳統(tǒng)的教學(xué)內(nèi)容相比,算法是新課程改革中新增的內(nèi)容,目的是培養(yǎng)學(xué)生們的邏輯思維能力,提高解決問(wèn)題的程序化能力.算法語(yǔ)句有著嚴(yán)格的語(yǔ)法規(guī)則,教材中介紹了五種基本的算法語(yǔ)句:輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句、條件語(yǔ)句、循環(huán)語(yǔ)句.每一種語(yǔ)句都有著嚴(yán)格的要求,但學(xué)生在學(xué)習(xí)算法基本語(yǔ)句時(shí)常會(huì)犯一些共性的錯(cuò)誤.本文從以下幾個(gè)實(shí)例對(duì)算法中常見錯(cuò)誤作簡(jiǎn)要剖析.

易錯(cuò)剖析一:賦值概念的理解錯(cuò)誤

例1 已知兩個(gè)單元存放了變量x,y,z的值,試給出一個(gè)算法,依次變換x,y,z的值.(x←y←z←x)

錯(cuò)解:Step1:x←y

Step2:y←z

Step3:z←x

錯(cuò)因:沒(méi)有理解賦值的含義,按上述算法,結(jié)果為x=z且為原y的值,y為原z的值.

正如A、B、C三個(gè)杯子中分別裝有可樂(lè)、雪碧、橙汁,若要交換這三種飲料,需要一個(gè)空杯子D來(lái)存儲(chǔ)A中的可樂(lè),這樣才能依次將B中雪碧倒入A中,C中的橙汁倒入B中,再將D中可樂(lè)倒入A中.

所以,正解:Step1:p←x Step2:x←y

Step3:y←z Step4:z←p

易錯(cuò)剖析二:變量的初始值錯(cuò)誤

i←0

S←0

While i≤10

S←S+2i

i←i+1

End While

Print S

End

i←1

S←0

While i≤10

S←S+2i

i←i+1

End While

Print S

End

例2 寫出一個(gè)計(jì)算 1+2+22+23+…+210的值的程序語(yǔ)句.

錯(cuò)解 如圖1

錯(cuò)因:錯(cuò)解中程序語(yǔ)句的功能是計(jì)算式子2+22+23+…+210的值,比題目中要求的式子少了一項(xiàng)“1”,將循環(huán)體中i的初始值改為0,可以實(shí)現(xiàn)題目的要求.

正解:如圖2

易錯(cuò)題剖析三:算法語(yǔ)句順序錯(cuò)誤

例3 設(shè)計(jì)一個(gè)求1+2+3+4+…+100流程圖.

錯(cuò)解(1):如圖3

錯(cuò)因:當(dāng)先執(zhí)行S←S+n,再判斷,而后執(zhí)行n←n+1,當(dāng)S加上100時(shí),符合條件,再次進(jìn)入循環(huán),這樣執(zhí)行的最后結(jié)果中多了101.即改變了算法語(yǔ)句的順序,使得執(zhí)行的結(jié)果發(fā)生了變化.

正解:如圖4,圖5

變式:用當(dāng)型循環(huán)來(lái)設(shè)計(jì)一個(gè)求1+2+3+4+…+100的流程圖.

錯(cuò)解:如圖4

錯(cuò)因:當(dāng)型循環(huán)與直到型循環(huán)概念不清.當(dāng)型循環(huán)特點(diǎn)是“先判斷后操作”,先判斷所給條件p是否成立,若成立,再執(zhí)行操作;若不成立,一次也不執(zhí)行循環(huán),直到型循環(huán)的特點(diǎn)是“先操作后判斷”,先執(zhí)行操作,再判斷所給條件p是否成立,若不成立,則再次循環(huán),如此反復(fù),直到條件p成立,循環(huán)結(jié)束.

正解:如圖6

易錯(cuò)題剖析四:“For”語(yǔ)句結(jié)構(gòu)認(rèn)識(shí)不清

例4 設(shè)計(jì)一個(gè)算法,計(jì)算1+3+5+…+99,寫出偽代碼.

錯(cuò)解:如圖7,

S←0

For i From 1 To 99

S←S+i

Print S

End For

S←0

For i From 1 To 99 Step2

S←S+i

End For

Print S

圖7_____________ 圖8

錯(cuò)因:在“For”語(yǔ)句中,如果省去步長(zhǎng)“Step2”,那么循環(huán)時(shí),i的值每次只增加1;而且將“Print S”放在循環(huán)體內(nèi),則每循環(huán)一下就輸出一個(gè)S.

正解:如圖8

在含有循環(huán)語(yǔ)句的程序中,變量的初始值、語(yǔ)句的順序和循環(huán)條件是關(guān)鍵,它們直接影響程序語(yǔ)句的輸出結(jié)果,各種循環(huán)的結(jié)構(gòu)也需要認(rèn)清,實(shí)際上例3的變式和例4都是對(duì)循環(huán)結(jié)構(gòu)的混淆.

易錯(cuò)題剖析五:If語(yǔ)句的嵌套結(jié)構(gòu)不了解

例5 函數(shù)y=2xx≤4

84

2(12-x)8

Read x

If x≤4 Then

y←2x

Else

If x>8 Then

y←2(12-x)

Else

y←8

End If

End If

Print y

End

錯(cuò)解_______________________________________ 正解

Read x

If x≤4 Then

y←2x

If x>8 Then

y←2(12-x)

Else

y←8

End If

End If

Print y

End

錯(cuò)因:沒(méi)有使用If語(yǔ)句的嵌套結(jié)構(gòu).

易錯(cuò)剖析六:算法語(yǔ)句選擇不當(dāng)

例6 輸入3個(gè)數(shù) a,b,c,如果這三個(gè)數(shù)能作為三角形的三邊長(zhǎng),那么輸出12(a+b+c),否則提示重新輸入. 試用算法基本語(yǔ)句表示上述過(guò)程.

錯(cuò)解

_____________

Read a,b,c

If a+b≤c或a+c≤b或b+c≤a Then

Read a,b,c

Else

p←(a+b+c)2

End If

Print p

End

錯(cuò)因:錯(cuò)解中用的是條件語(yǔ)句,僅僅執(zhí)行滿足條件的那一次,不能反復(fù)執(zhí)行,而題目條件的意思是:只要不滿足條件,就要反復(fù)執(zhí)行,因此應(yīng)該用循環(huán)語(yǔ)句.

正解:

_____________

Read a,b,c

While a+b≤c或a+c≤b或b+c≤a Then

Read a,b,c

End While

p←(a+b+c)2

Print p

End

上面談及的問(wèn)題和所列舉的例子,只是算法中的部分常見錯(cuò)誤,希望通過(guò)這些例子對(duì)大家有所啟發(fā).改錯(cuò)是引導(dǎo)學(xué)生辨析正誤的重要手段,只要經(jīng)過(guò)努力,每個(gè)同學(xué)掌握算法這章節(jié)的知識(shí)不是一件困難的事,而且通過(guò)自身努力掌握知識(shí),也就有了把數(shù)學(xué)學(xué)得更好的信心了.

(作者:陳燕,江蘇省溧水高級(jí)中學(xué))

猜你喜歡
錯(cuò)因易錯(cuò)剖析
攻克“不等式與不等式組”易錯(cuò)點(diǎn)
『壓強(qiáng)』易錯(cuò)警示
深究錯(cuò)因 把握本質(zhì)
立體幾何易錯(cuò)警示
一元一次方程錯(cuò)解剖析
剖析高考數(shù)列創(chuàng)新題
三角函數(shù)中防不勝防的易錯(cuò)點(diǎn)
反思錯(cuò)因正確解答
理清錯(cuò)因,讓“冪”運(yùn)算強(qiáng)起來(lái)
“幾何圖形初步”錯(cuò)解剖析