資源描述:
《你還敢威海ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、§1.1.2程序框圖復(fù)習(xí)回顧1.算法的概念廣義而言,算法就是解決某個問題或處理某件事的方法和步驟.狹義而言,算法是專指用計算機解決某一問題的方法和步驟.著名計算機科學(xué)家D.E.Knuth在其《計算機程序設(shè)計技巧》一書中為算法所下的定義是:“一個算法,就是一個有窮規(guī)則的集合,其中之規(guī)則規(guī)定了一個解決某一特定類型問題的運算系列”.主頁§1.1.2程序框圖練習(xí)任意給定一個正實數(shù)a,試設(shè)計一個算法求以a為直徑的圓的面積。解第一步:輸入a的值.第二步:________________________.第三步:________________________.第四步:輸出圓的面積的值.www.iwe
2、ihai.cn威海主頁§1.1.2程序框圖用自然語言描述算法的優(yōu)點是通俗易懂,當(dāng)算法中的操作步驟都是順序執(zhí)行時比較容易理解.缺點是如果算法中包含判斷和轉(zhuǎn)向,并且操作步驟較多時,就不那么直觀清晰了.主頁§1.1.2程序框圖新課引入算法可以用自然語言來描述,但為了使算法的程序或步驟表達(dá)得更為直觀,我們更經(jīng)常地用圖形方式來表達(dá)它.例如上一節(jié)“例1.任意給定一個大于1的整數(shù)n,試設(shè)計一個程序或步驟對n是否為質(zhì)數(shù)做出判定”的算法可以用以下形式來表達(dá).主頁§1.1.2程序框圖任意給定一個大于11的整數(shù)nn,試設(shè)計一個程序或步驟對nn是否為質(zhì)數(shù)作出判斷。第一步:給定大于2的整數(shù)n解:第二步:令i=2第
3、三步:用n除以i,得到余數(shù)r第四步:判斷r=0是否成立,若是,則n不是質(zhì)數(shù),結(jié)束算法;否則將i的值增加1,仍用i表示第五步:判斷i>(n-1)是否成立,若是,則n是質(zhì)數(shù),結(jié)束算法否則,返回第三步主頁§1.1.2程序框圖開始1輸入n否i=2r=0?求n除以i是的余數(shù)rn不是質(zhì)數(shù)n是質(zhì)數(shù)i=i+1否i≥n或r=0?結(jié)束是1主頁§1.1.2程序框圖講授新課一、程序框圖1.程序框圖的概念程序框圖又稱流程圖,是一種用規(guī)定的圖形、指向線及文字說明來準(zhǔn)確、直觀地表示算法的圖形.2.常見的程序框圖(ANSI,美國國家標(biāo)準(zhǔn)化協(xié)會)圖形符號名稱功能流程線連接循環(huán)框連結(jié)點連接循環(huán)框圖的兩部分主頁§1.1.2程
4、序框圖圖形符號名稱功能終端框表示一個算法的(起止框)起始和結(jié)束輸入、表示一個算法輸輸出框入和輸出的信息處理框賦值、計算(執(zhí)行框)判斷某一條件是否成立,成立時在出口處標(biāo)判斷框明“是”或“Y”,不成立時標(biāo)明“否”或“N”.主頁§1.1.2程序框圖3.四種基本框圖的及其功能用法:(1)起止框:框內(nèi)填寫開始、結(jié)束,任何程序框圖中,起止框是必不可少的;(2)輸入、輸出框:框內(nèi)填寫輸入、輸出的字母、符號等;(3)處理框(執(zhí)行框):算法中需要的算式、公式、對變量進(jìn)行賦值等要用執(zhí)行框表示.(4)判斷框:當(dāng)算法要求在不同的情況下執(zhí)行不同的運算時,需要判斷框.框內(nèi)填寫判斷條件.主頁§1.1.2程序框圖4.畫
5、流程圖的規(guī)則為了使大家彼此之間能夠讀懂各自畫出的框圖,必須遵守一些共同的規(guī)則,下面對一些常用的規(guī)則作一簡單的介紹.(1)使用標(biāo)準(zhǔn)的框圖符號.(2)框圖一般按從上到下、從左到右的方向畫.(3)除判斷框外,大多數(shù)程序框圖符號只有一個進(jìn)入點和一個退出點,判斷框是具有超過一個退出點的唯一符號.(4)一類判斷框是“是”與“否”兩分支的判斷,而且有且僅有兩個結(jié)果;另一類是多分支判斷,有幾種不同的結(jié)果.主頁§1.1.2程序框圖(5)在圖形符號內(nèi)描述的語言要非常簡練清楚.(6)起始框只允許一條流出線,終止框只允許一條流入線,輸入框、輸出框、處理框只有一條流入線和一條流出線,判斷框有一條流入線和兩條流出線
6、,但任何時候只有一條流出線起作用.(7)一個程序框圖包括以下幾部分:表示相應(yīng)操作的程序框;帶箭頭的流程線;程序框外必要的文字說明.主頁§1.1.2程序框圖開始1輸入n否i=2r=0?求n除以i是的余數(shù)rn不是質(zhì)數(shù)n是質(zhì)數(shù)i=i+1否i≥n或r=0?結(jié)束是1主頁§1.1.2程序框圖從上面的程序框圖中,不難看出以下三種不同的邏輯結(jié)構(gòu).求n除以i否的余數(shù)rr=0?輸入n是i=i+1i=2否n不是質(zhì)數(shù)n是質(zhì)數(shù)i≥n或r=0?是盡管不同的算法千差萬別,但它們都是由三種基本的邏輯結(jié)構(gòu)構(gòu)成的,這三種邏輯結(jié)構(gòu)就是順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、選擇結(jié)構(gòu).下面分別介紹這三種結(jié)構(gòu).主頁§1.1.2程序框圖二、順序結(jié)構(gòu)及
7、框圖表示1.順序結(jié)構(gòu):按照步驟依次執(zhí)行的一個算法,稱為具有“順序結(jié)構(gòu)”的算法,或者稱為算法的順序結(jié)構(gòu).2.順序結(jié)構(gòu)的流程圖順序結(jié)構(gòu)是最簡單的算法結(jié)構(gòu),語句與語句之間,語句A框與框之間是按從上到下的順序進(jìn)行的.它是由若干個處理步驟組成的,這是任語句B何一個算法都離不開的基本結(jié)構(gòu).主頁§1.1.2程序框圖3.畫順序結(jié)構(gòu)程序框圖時注意事項(1)在程序框圖中,開始框和結(jié)束框不可少;(2)在算法過程中,第一步輸入語句是必不可少的;(3)順序結(jié)