112程序框圖與算法的基本邏輯結(jié)構(gòu)1_第1頁(yè)
112程序框圖與算法的基本邏輯結(jié)構(gòu)1_第2頁(yè)
112程序框圖與算法的基本邏輯結(jié)構(gòu)1_第3頁(yè)
112程序框圖與算法的基本邏輯結(jié)構(gòu)1_第4頁(yè)
112程序框圖與算法的基本邏輯結(jié)構(gòu)1_第5頁(yè)
已閱讀5頁(yè),還剩13頁(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)介

1、1.1.2 1.1.2 程序框圖與算法程序框圖與算法 的基本邏輯結(jié)構(gòu)(的基本邏輯結(jié)構(gòu)(1 1) 任意給定一個(gè)大于任意給定一個(gè)大于1 1的整數(shù)的整數(shù)n, n,試設(shè)計(jì)一個(gè)程序或試設(shè)計(jì)一個(gè)程序或步驟對(duì)步驟對(duì)n n是否為質(zhì)數(shù)做出判定是否為質(zhì)數(shù)做出判定. .算法分析:第一步第一步: :判斷判斷n n是否等于是否等于2. 2. 若若n=2,n=2,則則n n是質(zhì)數(shù)是質(zhì)數(shù); ;若若n2,n2,則執(zhí)行第二步則執(zhí)行第二步. . 第二步第二步: :依次檢驗(yàn)依次檢驗(yàn)2(n-1)2(n-1)這些整數(shù)是不是這些整數(shù)是不是n n的的因素因素, ,即是不是整除即是不是整除n n的數(shù)的數(shù). .若有這樣的數(shù)若有這樣的數(shù), ,則

2、則n n不是不是質(zhì)數(shù)質(zhì)數(shù); ;若沒(méi)有這樣的數(shù)若沒(méi)有這樣的數(shù), ,則則n n是質(zhì)數(shù)是質(zhì)數(shù). . 為了使算法的程序或步驟表達(dá)得更為直觀,我們更經(jīng)常地用圖形方式來(lái)表示它.復(fù)習(xí)回顧復(fù)習(xí)回顧開(kāi)始開(kāi)始輸入輸入ni=2求求n除以除以i的余數(shù)的余數(shù)ri的值增加的值增加1仍用仍用i表示表示in或或r=0?n不是質(zhì)數(shù)不是質(zhì)數(shù)結(jié)束結(jié)束是是否否是是n是質(zhì)數(shù)是質(zhì)數(shù)否否r=0?設(shè)設(shè)n n是一個(gè)大是一個(gè)大于于2 2的整數(shù)的整數(shù). .一般用一般用i=i+1i=i+1表表示示. . i=i+1第一步第一步 輸入輸入n.n.第二步第二步 令令i=2.i=2.第三步第三步 用用i i除除n n得到余數(shù)得到余數(shù)r.r.第四步第四步

3、i=i+1.i=i+1.第五步第五步 判斷判斷r=0r=0或或i(n-1)i(n-1)是是否成立否成立. .若是,則退出循環(huán),執(zhí)若是,則退出循環(huán),執(zhí)行第六步;否則,返回第三步行第六步;否則,返回第三步. .第六步第六步 判斷判斷r=0r=0是否成立是否成立. .若若成立,輸出成立,輸出“n n不是質(zhì)數(shù)不是質(zhì)數(shù)”,結(jié),結(jié)束算法;否則,輸出束算法;否則,輸出“n n是質(zhì)是質(zhì)數(shù)數(shù)”,結(jié)束算法,結(jié)束算法. .算法步驟算法步驟:用程序框圖表示的算法更加用程序框圖表示的算法更加簡(jiǎn)練簡(jiǎn)練, ,直觀直觀, ,流向清楚流向清楚.程序框圖程序框圖又稱又稱流程圖流程圖, ,是一種用規(guī)定的是一種用規(guī)定的圖形圖形、指向

4、線指向線及及文字說(shuō)明文字說(shuō)明來(lái)準(zhǔn)確、直觀地表示算法的來(lái)準(zhǔn)確、直觀地表示算法的圖形圖形. .通常通常, ,程序框圖由程序框和流程線組成程序框圖由程序框和流程線組成. .一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟; ; 流程線是方向箭頭流程線是方向箭頭, ,按照算法進(jìn)行的順序?qū)⒊贪凑账惴ㄟM(jìn)行的順序?qū)⒊绦蚩蜻B接起來(lái)序框連接起來(lái). .基本的程序框和它們各自表示的功能如下基本的程序框和它們各自表示的功能如下: :圖形符號(hào)圖形符號(hào)名稱名稱功能功能終端框終端框( (起止框起止框) )表示一個(gè)算法的起始表示一個(gè)算法的起始和結(jié)束和結(jié)束輸入、輸輸入、輸出框出框表示一個(gè)算法

5、輸入和表示一個(gè)算法輸入和輸出的信息輸出的信息處理框處理框( (執(zhí)行框執(zhí)行框) )判斷某一條件是否成立判斷某一條件是否成立, ,成立成立時(shí)在出口處標(biāo)明時(shí)在出口處標(biāo)明“是是”或或“y”y”;不;不”成立時(shí)標(biāo)明成立時(shí)標(biāo)明“否否”或或“n”.n”.判斷框判斷框賦值、計(jì)算賦值、計(jì)算流程線流程線連接程序框連接程序框連接點(diǎn)連接點(diǎn)連接程序框圖的兩部分連接程序框圖的兩部分開(kāi)開(kāi) 始始輸入輸入n i=2求求n除以除以i的余數(shù)的余數(shù)ri=i+1in或或r=0?n不是不是 質(zhì)數(shù)質(zhì)數(shù)結(jié)結(jié) 束束是是否否是是n是質(zhì)數(shù)是質(zhì)數(shù) 否否r=0?順序結(jié)構(gòu)順序結(jié)構(gòu)用程序框圖來(lái)表示算法,有用程序框圖來(lái)表示算法,有三種不同的基本邏輯結(jié)構(gòu):三

6、種不同的基本邏輯結(jié)構(gòu):條件結(jié)構(gòu)條件結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)程序框圖的三種基本的邏輯結(jié)構(gòu)程序框圖的三種基本的邏輯結(jié)構(gòu)順序結(jié)構(gòu)順序結(jié)構(gòu)條件結(jié)構(gòu)條件結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)(1)(1)順序結(jié)構(gòu)順序結(jié)構(gòu)-是由若干個(gè)依次執(zhí)行的處理是由若干個(gè)依次執(zhí)行的處理步驟組成的步驟組成的. .這是任何一個(gè)算法都離不開(kāi)的這是任何一個(gè)算法都離不開(kāi)的基本結(jié)構(gòu)基本結(jié)構(gòu). .例1:已知一個(gè)三角形的三邊邊長(zhǎng)分別為2,3,4,利用海倫-秦九韶公式設(shè)計(jì)一個(gè)算法,求出它的面積,畫出算法的程序框圖.算法分析算法分析: :第一步第一步:計(jì)算計(jì)算p的值的值.第二步第二步:由海倫由海倫-秦九韶公式求出三角形的面積秦九韶公式求出三角形的面積s.第三步第

7、三步:輸出輸出s的值的值.已知三角形三邊長(zhǎng)分別為已知三角形三邊長(zhǎng)分別為a,b,ca,b,c, ,則三角形則三角形的面積為的面積為其中其中 這個(gè)公式被稱為海倫這個(gè)公式被稱為海倫秦九韶公式秦九韶公式. .()()()sp papbpc2abcp返回返回程序框圖程序框圖:開(kāi)始開(kāi)始2342p (2)(3)(4)sp ppp輸出輸出 s結(jié)束結(jié)束畫出畫出: :已知三角形的三已知三角形的三邊長(zhǎng)邊長(zhǎng)a,b,ca,b,c, ,求它的面積求它的面積的程序框圖的程序框圖. .開(kāi)始開(kāi)始2abcp()()()sp papbpc輸出輸出s結(jié)束結(jié)束輸入輸入a,b,c(2)(2)條件結(jié)構(gòu)條件結(jié)構(gòu)-在一個(gè)算法中在一個(gè)算法中,

8、,經(jīng)常會(huì)遇到一些條經(jīng)常會(huì)遇到一些條件的判斷件的判斷, ,算法的流向根據(jù)條件是否成立有不同算法的流向根據(jù)條件是否成立有不同的流向的流向. .條件結(jié)構(gòu)就是處理這種過(guò)程的結(jié)構(gòu)條件結(jié)構(gòu)就是處理這種過(guò)程的結(jié)構(gòu). .例例2: 2:任意給定任意給定3 3個(gè)正實(shí)數(shù)個(gè)正實(shí)數(shù), ,設(shè)計(jì)一個(gè)算法設(shè)計(jì)一個(gè)算法, ,判斷分別以這判斷分別以這3 3個(gè)數(shù)為三邊邊長(zhǎng)的三角形是否存在個(gè)數(shù)為三邊邊長(zhǎng)的三角形是否存在. .畫出這個(gè)算法的程畫出這個(gè)算法的程序框圖序框圖. .算法分析算法分析: :第一步第一步: :輸入輸入3 3個(gè)正實(shí)數(shù)個(gè)正實(shí)數(shù)a,b,ca,b,c; ;第二步第二步: :判斷判斷a+bc,a+cb,b+ca+bc,a+

9、cb,b+caa是否同時(shí)成立是否同時(shí)成立, ,若是若是, ,則則能組成三角形能組成三角形; ;若否若否, ,則組不成三角形則組不成三角形. .程序框圖程序框圖:開(kāi)始開(kāi)始輸入輸入a,b,ca+bc,a+cb,b+ca+bc,a+cb,b+caa是否是否同時(shí)成立同時(shí)成立? ?是是 存在這樣的存在這樣的三角形三角形 不存在這樣的不存在這樣的三角形三角形否否結(jié)結(jié) 束束例例. .畫程序框圖畫程序框圖, ,對(duì)于輸入的對(duì)于輸入的x x值值, ,輸出相應(yīng)的輸出相應(yīng)的y y值值. .0(0)1(01)(1)xyxx x開(kāi)始開(kāi)始 程序框圖程序框圖x0?是是y=0否否0 x1?是是y=1否否y=x輸出輸出 y結(jié)結(jié) 束束輸入輸入x 是是例例. .設(shè)計(jì)一個(gè)求任意數(shù)的絕對(duì)值的算法設(shè)計(jì)一個(gè)求任意數(shù)的絕對(duì)值的算法, ,并畫出程并畫出程序框圖序框圖. .0|xxxx x0算法分析算法分析: :第一步第一步: :輸入數(shù)輸入數(shù)x; x;第二步第二步: :判斷判斷x0 x0是是否成立否成立? ?若是若是, ,則則|x|=x;|x|=x;若否若否, ,則則|x|=-x.|x|=-x.

溫馨提示

  • 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)論