高中數(shù)學(xué)-程序框圖與算法的基本邏輯結(jié)構(gòu)教學(xué)課件設(shè)計(jì)_第1頁
高中數(shù)學(xué)-程序框圖與算法的基本邏輯結(jié)構(gòu)教學(xué)課件設(shè)計(jì)_第2頁
高中數(shù)學(xué)-程序框圖與算法的基本邏輯結(jié)構(gòu)教學(xué)課件設(shè)計(jì)_第3頁
高中數(shù)學(xué)-程序框圖與算法的基本邏輯結(jié)構(gòu)教學(xué)課件設(shè)計(jì)_第4頁
高中數(shù)學(xué)-程序框圖與算法的基本邏輯結(jié)構(gòu)教學(xué)課件設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

程序框圖與算法的基本邏輯結(jié)構(gòu)復(fù)習(xí)回顧

前面我們學(xué)習(xí)了算法的基本思想,它實(shí)施上是我們處理問題的一系列步驟,現(xiàn)代意義上的“算法”通常是指可以用計(jì)算機(jī)來解決的某一類問題的程序或步驟.

新課引入

從第1節(jié)我們可以看出,算法的步驟只有在一定的條件下才會被執(zhí)行,有一些步驟在一定的條件下會被重復(fù)執(zhí)行。因此,我們有必要探究使算法表達(dá)更加直觀、準(zhǔn)確的方法.

算法可以用自然語言來描述,但為了使算法的程序或步驟表達(dá)得更為直觀,我們更經(jīng)常地用圖形方式來表達(dá)它.終端框(起止框)輸入、輸出框處理框(執(zhí)行框)判斷框

流程線連接點(diǎn)(1)起止框:框內(nèi)填寫開始、結(jié)束,任何程序框圖中,起止框是必不可少的;(2)輸入、輸出框:框內(nèi)填寫輸入、輸出的字母、符號等;四種基本的程序框及其功能用法:(3)處理框(執(zhí)行框):算法中需要的算式、公式、對變量進(jìn)行賦值等要用執(zhí)行框表示.(4)判斷框:當(dāng)算法要求在不同的情況下執(zhí)行不同的運(yùn)算時(shí),需要判斷框.框內(nèi)填寫判斷條件.

例如上一節(jié)“例1.任意給定一個(gè)大于1的整數(shù)n,試設(shè)計(jì)一個(gè)程序或步驟對n是否為質(zhì)數(shù)做出判定”的算法可以用以下形式來表達(dá).開始輸入ni=2i=i+1i>n或r=0?n不是質(zhì)數(shù)結(jié)束r=0?1否是求n除以i的余數(shù)r1n是質(zhì)數(shù)是否i=i+1i≥n或r=0?否是求n除以i的余數(shù)輸入ni=2n不是質(zhì)數(shù)r=0?n是質(zhì)數(shù)是否

盡管不同的算法千差萬別,但它們都是由三種基本的邏輯結(jié)構(gòu)構(gòu)成的,這三種邏輯結(jié)構(gòu)就是順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu).本節(jié)課我們先來認(rèn)識這三種結(jié)構(gòu)中的前兩種,即

從上面的程序框圖中,不難看出以下三種不同的邏輯結(jié)構(gòu).順序結(jié)構(gòu)條件結(jié)構(gòu)順序結(jié)構(gòu)及框圖表示1.順序結(jié)構(gòu):按照步驟依次執(zhí)行的一個(gè)算法,稱為具有“順序結(jié)構(gòu)”的算法,或者稱為算法的順序結(jié)構(gòu).2.順序結(jié)構(gòu)的流程圖

順序結(jié)構(gòu)是最簡單的算法結(jié)構(gòu),語句與語句之間,框與框之間是按從上到下的順序進(jìn)行的.它是由若干個(gè)處理步驟組成的,這是任何一個(gè)算法都離不開的基本結(jié)構(gòu).步驟n步驟n+1畫順序結(jié)構(gòu)程序框圖時(shí)注意事項(xiàng)步驟n和步驟n+1是依次執(zhí)行的,只有在執(zhí)行完步驟n指定的操作后,才能接著執(zhí)行步驟n+1所指定的操作.(1)在程序框圖中,開始框和結(jié)束框不可少;(2)在算法過程中,第一步輸入語句是必不可少的;(3)順序結(jié)構(gòu)在程序框圖中的體現(xiàn)就是用流程線將程序框自上而下地連接起來,按順序執(zhí)行算法步驟.步驟n步驟n+1【例3】已知一個(gè)三角形的三邊邊長分別為a,b,c,利用海倫—秦九韶公式設(shè)計(jì)一個(gè)算法,求出它的面積,畫出算法的程序框圖.第一步,輸入三角形三條邊的邊長a,b,c。第四步,輸出S。第三步,計(jì)算。第二步,計(jì)算。【例3】已知一個(gè)三角形的三邊邊長分別為a,b,c,利用海倫—秦九韶公式設(shè)計(jì)一個(gè)算法,求出它的面積,畫出算法的程序框圖.第一步,輸入三角形三條邊的邊長a,b,c。第四步,輸出S。第三步,計(jì)算。第二步,計(jì)算。輸出S結(jié)束輸入a,b,c開始【1】“雞兔同籠”是我國隋朝時(shí)期的數(shù)學(xué)著作《孫子算經(jīng)》中的一個(gè)有趣而具有深遠(yuǎn)影響的題目:“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何.”請你設(shè)計(jì)一個(gè)這類問題的通用算法.并畫出算法的程序框圖.設(shè)有X只雞,Y只兔.則解:雞兔同籠,設(shè)雞兔總頭數(shù)為H,總腳數(shù)為F,求雞兔各有多少只.算法分析如下:

解方程組,得練習(xí)第一步:輸入總頭數(shù)H,

總腳數(shù)F;第二步:計(jì)算雞的個(gè)數(shù)

x=(4H-F)/2;第三步:計(jì)算兔的個(gè)數(shù)

y=(F-2H)/2;第四步:輸出x,y開始輸出X,Y結(jié)束X=(4H-F)/2Y=(F-2H)/2輸入H和F解:用數(shù)學(xué)語言程序框圖第四步:計(jì)算;【2】試描述求點(diǎn)(x0,y0)到直線Ax+By+C=0的距離的算法,并畫出算法的程序框圖.第一步:輸入x0,y0,A,B,C;第二步:計(jì)算Z1=Ax0+By0+C;第三步:計(jì)算Z2=A2+B2;第五步:輸出d.解:用數(shù)學(xué)語言開始輸入x0,y0,A,B,CZ1=Ax0+By0+CZ2=A2+B2輸出d結(jié)束程序框圖

在一個(gè)算法中,經(jīng)常會遇到一些條件的判斷,算法的流程根據(jù)條件是否成立有不同的流向.例如在上一節(jié)課中,我們做過一個(gè)求三角形的面積的流程,其實(shí)那個(gè)流程是有問題的.因?yàn)楫?dāng)輸入了a,b,c三個(gè)數(shù)值后,我們不知道它們是否可以組成三角形.所以應(yīng)該先作一個(gè)判斷,如果是三角形,則繼續(xù)去計(jì)算面積;如果不是三角形,則輸出錯誤信息.算法的條件結(jié)構(gòu)在算法的程序框圖中,由若干個(gè)在一定條件下才會被執(zhí)行的步驟組成的邏輯結(jié)構(gòu),稱為條件結(jié)構(gòu),用程序框圖可以表示為下面兩種形式:滿足條件?步驟A步驟B是否滿足條件?步驟A是否你如何理解這兩種程序框圖的共性和個(gè)性?1.此結(jié)構(gòu)中包含一個(gè)判斷框,根據(jù)給定的條件是否成立而選擇執(zhí)行步驟A、步驟B或不執(zhí)行步驟.2.一個(gè)判斷結(jié)構(gòu)可以有多個(gè)判斷框.3.在許多算法中,需要對問題的條件作出邏輯判斷,判斷后依據(jù)條件是否成立而進(jìn)行不同的處理方式,這就需要用條件結(jié)構(gòu)來實(shí)現(xiàn)算法.例4.任意給定3個(gè)正實(shí)數(shù),設(shè)計(jì)一個(gè)算法,判斷以這3個(gè)正實(shí)數(shù)為三條邊邊長的三角形是否存在,并畫出這個(gè)算法的程序框圖.第一步:輸入三個(gè)正實(shí)數(shù)a,b,c.第二步:判斷a+b>c,b+c>a,c+a>b是否同時(shí)成立.若是,則存在這樣的三角形;否則,不存在這樣的三角形.開始輸入a,b,ca+b>c,b+c>a,c+a>b是否同時(shí)成立?是

存在這樣的三角形結(jié)束否

不存在這樣的三角形例5.設(shè)計(jì)一個(gè)求解一元二次方程ax2+bx+c=0的算法,并畫出程序框圖表示.算法分析:第一步:輸入三個(gè)系數(shù)a,b,c.第二步:計(jì)算△=b2-4ac.第三步:判斷△≥0是否成立.若是,則計(jì)算;否則,輸出“方程沒有實(shí)數(shù)根”,結(jié)束算法.第四步:判斷△=0是否成立.若是,則輸出x1=x2=p;否則,計(jì)算x1=p+q,x2=p-q,并輸出x1,x2.程序框圖△=b2-4ac△≥0?YN輸入a,b,c開始12輸出x1,x2△=0?YN輸出“方程無實(shí)數(shù)解”結(jié)束x2=p-q12x1=p+q輸出p1.條件結(jié)構(gòu)不同于順序結(jié)構(gòu)的特征是含()A.處理框B.判斷框C.輸入、輸出框D.起、止框B2.如果考生的成績大于或等于60分,則輸出“及格”,否則輸出“不及格”,用流程圖表示這一算法的過程.輸入xx≥60YN開始結(jié)束輸出“及格”輸出“不及格”3.下面的流程圖表示了一個(gè)什么樣的算法?所給流程圖描述了求三個(gè)數(shù)a,b,c的最大數(shù)的算法.

輸出bNYNYa>b且輸入a,b,cb>c

輸出a

輸出c開始結(jié)束a>cA4

溫馨提示

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

最新文檔

評論

0/150

提交評論