浙教版 信息技術(shù) 選修1 5.1  解析、枚舉算法及其程序?qū)崿F(xiàn)課件_第1頁(yè)
浙教版 信息技術(shù) 選修1 5.1  解析、枚舉算法及其程序?qū)崿F(xiàn)課件_第2頁(yè)
浙教版 信息技術(shù) 選修1 5.1  解析、枚舉算法及其程序?qū)崿F(xiàn)課件_第3頁(yè)
浙教版 信息技術(shù) 選修1 5.1  解析、枚舉算法及其程序?qū)崿F(xiàn)課件_第4頁(yè)
浙教版 信息技術(shù) 選修1 5.1  解析、枚舉算法及其程序?qū)崿F(xiàn)課件_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

3.9解析、枚舉算法及其程序?qū)崿F(xiàn)考點(diǎn)1考點(diǎn)2考點(diǎn)1解析算法的程序?qū)崿F(xiàn)解析算法是指用解析的方法找出問(wèn)題的前提條件與所求結(jié)果之間關(guān)系的數(shù)學(xué)表達(dá)式,并通過(guò)表達(dá)式的計(jì)算來(lái)實(shí)現(xiàn)問(wèn)題求解。例如計(jì)算1+2+3+…+100的和,可通過(guò)求和公式s=n(n+1)得到。解析算法的程序?qū)崿F(xiàn)關(guān)鍵是建立正確的數(shù)學(xué)模型(得出正確的數(shù)學(xué)計(jì)算表達(dá)式),并保證計(jì)算過(guò)程描述的正確性(用正確合理的VB變量、表達(dá)式來(lái)表示已經(jīng)得出的數(shù)學(xué)計(jì)算式)??键c(diǎn)1考點(diǎn)2例1研究表明,人的身高與遺傳有很大關(guān)系,其中成年男性的身高預(yù)測(cè)公式為身高(cm)=(父親身高+母親身高)*1.08/2,女性的身高預(yù)測(cè)公式為身高(cm)=(父親身高*0.923+母親身高)/2,具體程序運(yùn)行界面和算法流程圖如下圖所示:考點(diǎn)1考點(diǎn)2考點(diǎn)1考點(diǎn)2運(yùn)行程序時(shí),在文本框Text1中輸入父親身高,在文本框Text2中輸入母親身高,在文本框Text3中輸入性別,單擊“預(yù)測(cè)”按鈕Command1,在標(biāo)簽Label4中顯示預(yù)測(cè)身高,程序代碼如下:PrivateSubCommand1_Click()h1=Val(Text1.Text)h2=Val(Text2.Text)s=Text3.TextIfs=″男″Then

h=

Else

h=(h1*0.923+h2)/2EndIfLabel4.Caption=Text3.Text+″孩子的身高是:″+

+″cm″

EndSub考點(diǎn)1考點(diǎn)2(1)該事件處理過(guò)程采用的算法是

。(填解析算法/枚舉算法)

(2)在程序中①和②劃線處,填入適當(dāng)?shù)恼Z(yǔ)句或表達(dá)式,把程序補(bǔ)充完整。程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

。

答案:(1)解析算法(2)(h1+h2)*1.08/2

Str(h)考點(diǎn)1考點(diǎn)2解析:本題要求完善使用解析算法解決問(wèn)題的程序。解析算法在程序?qū)崿F(xiàn)時(shí)的關(guān)鍵點(diǎn)是能得出“正確的數(shù)學(xué)模型”和寫出“正確的VB計(jì)算表達(dá)式”。從題目功能描述可知子女身高與父母身高之間存在著明確的關(guān)系,事件處理過(guò)程正是利用解析算法解決此問(wèn)題的程序,屬于解析算法的實(shí)現(xiàn)。根據(jù)題意和流程圖,①處為計(jì)算男孩子的身高,把計(jì)算表達(dá)式轉(zhuǎn)換為VB語(yǔ)法的表達(dá)式填入即可。②處顯示孩子的身高,即h的值。解決此類問(wèn)題可根據(jù)任務(wù)描述和流程圖,正確提煉其中的數(shù)學(xué)表達(dá)式并將其轉(zhuǎn)化成VB表達(dá)式??键c(diǎn)1考點(diǎn)2考點(diǎn)2枚舉算法的程序?qū)崿F(xiàn)枚舉算法也稱窮舉算法,其基本思想是根據(jù)問(wèn)題本身的性質(zhì),一一列舉該問(wèn)題所有可能的情況,并根據(jù)題目的條件逐一作出判斷,從中找出符合條件的解。在列舉的過(guò)程中,既不能遺漏,也不能重復(fù)。比如,要求100以內(nèi)所有的素?cái)?shù),就可以采用枚舉算法??键c(diǎn)1考點(diǎn)2例2雞兔同籠問(wèn)題。一群雞和兔關(guān)在一個(gè)籠子里,其中共有頭30個(gè),腳60只,問(wèn)雞和兔各幾只?現(xiàn)用VB程序求解,程序如下:PrivateSubCommand1_Click()fori=1to30

j=

if

then

list1.additem″雞:″+str(i)+″只,兔″+str(j)+″只?!?/p>

endifnextiEndSub考點(diǎn)1考點(diǎn)2(1)該事件處理過(guò)程采用的算法是

。(填:解析算法/枚舉算法)

(2)在程序中①和②劃線處,填入適當(dāng)?shù)恼Z(yǔ)句或表達(dá)式,把程序補(bǔ)充完整。程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

答案:(1)枚舉算法(2)30-i

i*2+j*4=60解析:由語(yǔ)句list1.additem

″雞:″+str(i)+″只,兔″+str(j)+″只?!蹇芍?變量i表示雞的數(shù)量,j表示兔的數(shù)量,所以①處應(yīng)填入30-i。②處判斷腳的數(shù)量是否等于60,即②處的條件表達(dá)式i*2+j*4=60,只要滿足兩個(gè)條件,即把數(shù)據(jù)展示在列表框中。由上分析可知,循環(huán)變量i表示雞的數(shù)量,其值由1到30,逐一條件“i*2+j*4=60”進(jìn)行比對(duì),若符合的進(jìn)行展示,由此特征可判斷該程序是典型的枚舉算法程序。1.計(jì)算三角形面積的算法如下:①輸入三角形三邊長(zhǎng)a,b,c②如果a,b,c能組成三角形,則執(zhí)行③④⑤,否則轉(zhuǎn)到⑥③計(jì)算半周長(zhǎng)p=(a+b+c)/2④計(jì)算三角形面積s=Sqr(p*(p-a)*(p-b)*(p-c))⑤輸出面積s,轉(zhuǎn)到⑦⑥輸出不能組成三角形⑦結(jié)束上述算法屬于(

)A.排序算法 B.解析算法C.枚舉算法 D.查找算法答案:B

解析:解析算法的基本思想是用解析的方法找出表示問(wèn)題的前提條件與所求結(jié)果之間關(guān)系的數(shù)學(xué)表達(dá)式,并通過(guò)數(shù)學(xué)表達(dá)式的計(jì)算來(lái)實(shí)現(xiàn)問(wèn)題的求解。本題為解析算法。2.以下問(wèn)題屬于用解析算法解決問(wèn)題的是(

)A.已知完全平方數(shù)的定義,找出1~100范圍內(nèi)的所有完全平方數(shù)B.利用一元二次方程求根公式求解方程的根C.求二元一次方程2x+y=10所有正整數(shù)的解D.根據(jù)犯罪嫌疑人的體貌特征,從公安部檔案庫(kù)中篩選出可疑人信息答案:B

解析:其他三項(xiàng)屬于枚舉法。3.用解析法計(jì)算勻加速直線運(yùn)動(dòng)位移和速度的VB程序代碼如下:PrivateSubCommand1_click()DimsasSingle,v0asSingle,aasSingle,tasSingle,vtasSinglev0=

'v0存放初速度

a=Val(Text2.Text)t=Val(Text3.Text)vt=v0+a*ts=

Text4.Text=Str(s)Text5.Text=Str(vt)EndSub程序界面如下圖所示:已知即時(shí)速度的計(jì)算公式是v0+at,位移的計(jì)算公式為v0t+at2,則:程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

。

答案:val(Text1.Text)

v0*t+a*t^2/24.某商場(chǎng)舉行“滿就送”活動(dòng),活動(dòng)規(guī)則如下:購(gòu)物滿100送10元券購(gòu)物滿200送30元券購(gòu)物滿300送60元券購(gòu)物滿400送100元券購(gòu)物滿500送150元券根據(jù)上述規(guī)則,使用VB設(shè)計(jì)程序如下:PrivateSubCommand1_click()DimmasSingle,xasIntegerm=Val(Text1.Text)If

Then

x=150ElseIfm>=400Then

x=100ElseIfm>=300Then

x=60ElseIfm>=200Then

x=30ElseIfm>=100Then

x=10EndIfLabel1.Caption=

'顯示優(yōu)惠券值

EndSub解決此問(wèn)題所采用的算法是

(填:解析法/枚舉法)

程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

答案:解析法m>=500

str(x)5.有如下VB程序段:Sum=0Fork=1To100a=Int(Rnd*50)IfaMod2=0ThenSum=Sum+aNextk該程序段運(yùn)行后,變量Sum中存儲(chǔ)的是(

)A.50個(gè)隨機(jī)整數(shù)中偶數(shù)的和B.50個(gè)隨機(jī)整數(shù)中奇數(shù)的和C.100個(gè)隨機(jī)整數(shù)中偶數(shù)的和D.100個(gè)隨機(jī)整數(shù)中奇數(shù)的和答案:C6.水仙花數(shù)是指其各位數(shù)字的3次冪之和等于它自身的數(shù),打印100—999中的水仙花數(shù)的算法如下:PrivateSubcommand1_click()fori=100to999

a=i\100'得到i的百位數(shù)字

b=i\10mod10'得到i的十位數(shù)字

c=

if

i=

thenprinti

nextiEndSub程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

。

答案:imod10或i-a*100-b*10

a^3+b^3+c^3解析:1處用于得到i的個(gè)位數(shù)字。7.現(xiàn)有1元幣3張、5元幣4張,用這些錢幣中的一張或若干張可以得到多少種不同的資金數(shù)量?,F(xiàn)用VB程序求解,程序如下:PrivateSubCommand1_click()List1.Clears=0Forone=0To3

Forfive=0To4

m=

Ifm>0Then

s=

List1.AddItem″一元幣取″+Str(one)+″張,5元幣取″+Str(five)+″張資金量為:″+Str(m)+″元。″

EndIf

NextNextList1.AddItem″共有″+Str(s)+″種組合!″EndSub(1)本程序主要采用的算法是

(填:枚舉算法/解析算法)。

(2)在程序中①和②劃線處,填入適當(dāng)?shù)恼Z(yǔ)句或表達(dá)式,把程序補(bǔ)充完整。程序中①劃線處應(yīng)填入

。

程序中②劃線處應(yīng)填入

。

答案:(1)枚舉算法(2)one+five*5

s+1解析:從語(yǔ)句List1.AddItem

″一元幣取″

+

Str(one)

+

″張,5元幣取″

+

Str(five)

+

″張資金量為:″

+

Str(m)

+

″元?!蹇梢钥闯鲎兞縨存放的是某種組合的資金量。從語(yǔ)句List1.AddItem

″共有″

+

Str(s)

+

″種組合!″可以看出變量s存放的是組合數(shù)量。8.用蒙特卡羅法求π的近似值。下列程序是使用隨機(jī)函數(shù)RND,根據(jù)x2+y2≤1判斷落點(diǎn)是否在圓內(nèi)來(lái)求π的近似值。其中,總共投點(diǎn)n次,統(tǒng)計(jì)落點(diǎn)在單位圓內(nèi)的點(diǎn)數(shù)為s,則4s/n的值即為所求的π值。請(qǐng)完善程序:PrivateSubCommand1_click()dimiaslong,naslong,saslong,xasdouble,yasdouble,rasdoublen=val(text1.text)i=1s=0randomizedowhile①

x=rnd():y=rnd()r=②

ifr<=1then

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論