




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、算法與程序框圖一、程序框圖與算法基本邏輯結構:1.程序框圖符號及作用:程序框圖又稱流程圖,是一種用規定的圖形、指向線及文字說明來準確、直觀地表示算法的圖形.圖形符號名稱功能終端框(起止框)表示一個算法的起始和結束,是任何算法程序框圖不可缺少的輸入、輸出框表示一個算法輸入和輸出的信息,可用在算法中任何需要輸入、輸出的位置處理框(執行框)賦值、計算.算法中處理數據需要的算式、公式等,它們分別寫在不同的用以處理數據的處理框內判斷框判斷某一條件是否成立,成立時出口處標明“是”或“Y”;不成立時標明“否”或“N”流程線連接程序框,表示算法進行的前進方向以及先后順序連接點如果一個流程圖需要分開來畫,要在斷
2、開處畫上連接點,并標出連接的號碼例:解一元二次方程:2.畫程序框圖的規則:為了使大家彼此之間能夠讀懂各自畫出的框圖,必須遵守一些共同的規則,下面對一些常用的規則做一簡要介紹.(1)實用標準的框圖符號.(2)框圖一般按從上到下、從左到右的方向畫.(3)一個完整的程序框圖必須有終端框,用于表示程序的開始和結束.(4)除判斷框外,大多數框圖符號只有一個進入點和一個退出點,判斷框是具有超過一個退出點的唯一符號,另外,一種判斷框是“是”與“不是”兩分支的判斷,而且有且僅有兩個結果;還有一種是多分支判斷,有幾個不同的結果.(5)在圖形符號內用于描述的語言要非常簡練清楚.3.算法的三種基本邏輯結構:步驟n步
3、驟n+1(1)順序結構順序結構是最簡單的算法結構,語句與語句之間,框與框之間是按從上到下的順序進行的,它是由若干個依次執行的處理步驟組成的,它是任何一個算法離不開的基本結構.如圖,只有在執行完步驟n后,才能接著執行步驟n+1.例:.已知梯形的上底、下底和高分別為5、8、9,寫出求梯形的面積的算法,畫出流程圖.解:算法如下:S1a5;S2b8;S3h9;S4S(a+b)×h/2;S5輸出S.流程圖如下:(2)條件結構一些簡單的算法可以用順序結構來實現,順序結構中所表達的邏輯關系是自然串行,線性排列的.但這種結構無法描述邏輯判斷,并根據判斷結果進行不同的處理的操作,(例如遇到十字路口看信
4、號燈過馬路的問題)因此,需要另一種邏輯結構來處理這類問題.條件結構的結構形式如圖,在此結構中含有一個判斷框,算法執行到此判斷框給定的條件P時,根據條件P是否成立,選擇不同的執行框(步驟A,步驟B),無論條件P是否成立,只能執行步驟A或步驟B之一,不可以兩者都執行或都不執行.步驟A和步驟B中可以有一個是空的.例:某鐵路客運部門規定甲、乙兩地之間旅客托運行李的費用為 其中(單位:)為行李的重量 試給出計算費用(單位:元)的一個算法,并畫出流程圖 輸入行李的重量; 如果,那么,否則; 輸出行李的重量和運費(3)循環結構在一些算法中要求重復執行同一操作的結構稱為循環結構.即從算法某處開始,按照一定條件
5、重復執行某一處理過程.重復執行的處理步驟稱為循環體.例:北京成功舉辦了2008年第29屆奧運會.你知道在申奧的最后階段,國際奧委會是如何通過投票決定主辦權歸屬的嗎?對篩選出的5個申辦城市進行表決的操作程序是:首先進行第一輪投票,如果有一個城市得票超過總票數的一半,那么該城市就獲得舉辦權;如果所有申辦城市得票數都不超過總票數的一半,則將得票數最少的城市淘汰,然后重復上述過程,直到選出一個申辦城市為止.怎樣用算法結構表述上面的操作過程? 解:算法為: 投票; 統計票數,如果有一個城市得票超過總票數的一半,那么該城市就獲得舉辦權,轉,否則淘汰得票數最少的城市,轉; 宣布主辦城市這里,“投票”就是一個
6、循環體循環結構有兩種形式:直到型循環結構(until型)和當型循環結構(while型)(1)直到型循環結構如圖,直到型循環在執行一次循環體A之后,對控制循環的條件P進行判斷,如果條件P不成立則返回繼續執行循環體A,執行后,再判斷條件P是否成立,依次重復操作,直到某一次給定的判斷條件P成立為止.此時,不再返回來執行循環體A,離開循環結構,繼續執行下面的結構.直到型循環,因其先執行一次循環體,再對控制循環的條件進行判斷,然后根據判斷的結果決定是否繼續執行循環體.當條件不成立時繼續執行循環體,當條件成立時,跳出循環結構,所以,我們也把直到型循環稱為“后測試型”循環.(2)當型循環結構如圖,每次執行循
7、環體A前,先對控制循環的條件P進行判斷,當條件P成立時執行循環體A,循環體A執行完畢后,返回來再判斷條件P是否成立,如果條件P仍然成立,那么再執行循環體A,如此反復執行循環體A,直到某一次返回來判斷條件P不成立時為止,此時不再執行循環體A,離開循環結構,繼續執行下面的結構.也正因為當型循環結構先對條件P進行判斷,當條件P成立時,執行循環體;當條件不成立時,跳出循環結構,我們常常把當型循環結構還稱為“前測試型”循環.區別:“當型循環”結構中的循環條件時維持循環的;“直到型循環”結構中的循環條件時終止循環的.聯系:兩個循環形式不同但功能和作用相同,一般情況下可以相互轉化.例:寫出計算的算法及程序框
8、圖(分別用直到型循環和當型循環)(全解P15)解:第一步:設i的值為1; 第二步:設sum的值為0; 第三步:如果i100執行第四步,否則轉去執行第七步; 第四步:計算sumi并將結果代替sum; 第五步:計算i1并將結果代替i; 第六步:轉去執行第三步; 第七步:輸出sum的值并結束算法.循環結構的應用:(1) 確定循環變量和初始條件;(2) 確定算法中反復執行的部分,即循環體;(3) 確定循環的條件;(4) 注意不要出現“死循環”.二、基本算法語句1、輸入語句2、輸出語句3、賦值語句4、條件語句IF-THEN-ELSE格式IF-THEN格式5、循環語句(1)WHILE語句(2)UNTIL語
9、句三、算法案例1任何一種程序設計語言都包含五種基本的算法語句,它們是輸入語句 , 輸出語句, 賦值語句,條件語句,循環語句2.輸入語句的一般格式是; 輸出語句的一般格式是; 賦值語句的一般格式是; 條件語句的一般格式是 或 ; 循環語句的一般格式是 和 .輸入語句、 輸出語句、 賦值語句基本對應于程序框圖中的順序結構;條件語句、循環語句分別用來表達程序框圖中的條件結構和循環結構.3.常用符號運算符號:加_+_,減-_,乘*_,除/_,乘方ab,整數取商,求余數MOD.邏輯符號:且AND,或OR,大于>,等于=,小于<,大于等
10、于>=,小于等于<=,不等于<>.常用函數:絕對值ABS,平方根SQR,取整INT.4.算法案例(1)輾轉相除法和更相減損術輾轉相除法和更相減損術都是求兩個正整數的最大公約數的方法.(1)輾轉相除法就是對于給定的兩個正整數,用大數除以小數,若余數不為0,則將小數和余數構成新的一對數,繼續上面的除法,反復執行此步驟,直到大數被小數除盡,則這時較小的數就是原來兩個數的最大公約數.(2)更相減損術就是對于給定的兩個正整數,若它們都是偶數,則將它們反復除以2(假設進行了k次),直到它們至少有一個不是偶數后,將大數減小數,然后將差和較小的數構成一對新數,繼續上面的減法,反復執行此
11、步驟,直到差和較小的數相等,此時相等的數再乘以原來約簡的即為所求兩數的最大公約數.(2)秦九韶算法秦九韶算法是求多項式值的優秀算法.設,改寫為如下形式:設這樣求n次多項式的值就轉化為求n個一次多項式的值.當多項式中有些項不存在時,可將這幾項看做,補齊后再利用秦九韶算法進行計算.對于一個n次多項式,只需做n次乘法和n次加法運算即可.(3)進位制K進制數的基數為k,k進制數是由之間的數字構成的.將十進制的數轉化為k進制數的方法是除k取余法.一、典例精析例1寫出用循環語句描述求的值的算法程序.例2、某市對排污水進行綜合治理,征收污水處理費,系統對各廠一個月內排出的污水量噸收取的污水處理費元,運行程序
12、如下所示:請寫出y與m的函數關系,并求排放污水150噸的污水處理費用.例3 求三個數72,120,168的最大公約數.變式:試寫出求正整數的最小公倍數的算法程序.解:例4.用秦九韶算法求多項式在時的值.例5.完成下列進制的轉化變式訓練:下面是把二進制數化為十進制數的一個程序框圖,判斷框內應填入的條件是 ( )二、習題精練(一)基本概念1.下列關于算法的說法正確的是()某算法可以無止境地運算下去一個問題的算法步驟可以是可逆的完成一件事情的算法有且只有一種設計算法要本著簡單、方便、可操作的原則2任何一個算法都離不開的基本結構為()
13、邏輯結構選擇結構循環結構順序結構3下列圖形符號表示判斷框的是()ACD4能夠使算法的程序和步驟表達更為直觀的是()自然語言流程圖數學語言邏輯語言5下面的四種敘述不能稱為算法的是( )廣播的廣播操圖解歌曲的歌譜做飯用米做米飯需要刷鍋、淘米、添水、加熱這些步驟6在流程圖中,算法要處理數據或計算,可分別寫在不同的()處理框內 判斷框內輸入、輸出框內循環框內(二)順序結構及其應用1.早上從起床到出門需要洗臉刷牙(5 min)、刷水壺(2 min)、燒水(8 min)、泡面(3 min)、吃飯(10 min)、聽廣播(8 min)幾個步驟.從下列選項中選最好的一種算法()A.S1洗臉刷牙、S2刷水壺、S
14、3燒水、S4泡面、S5吃飯、S6聽廣播B.S1刷水壺、S2燒水同時洗臉刷牙、S3泡面、S4吃飯、S5聽廣播C. S1刷水壺、S2燒水同時洗臉刷牙、S3泡面、S4吃飯同時聽廣播D.S1吃飯同時聽廣播、S2泡面、S3燒水同時洗臉刷牙、S4刷水壺2. 寫出求方程,()的算法步驟 , , 3. 將兩個數a=8,b=17交換,使a=17,b=8,下面語句正確一組是 ( )c=bb=aa=ca=cc=bb=ab=aa=ba=bb=a A. B. C. D. 4.右邊流程圖表示算法,輸出的5. “雞兔同籠”是我國隋朝時期的數學著作孫子算經中的一個有趣而具有深遠影響的題目:“今有雉兔同籠,上有三十五頭,下有九
15、十四足.問雉兔各幾何.”用方程組的思想不難解決這一問題,請你設計一個這類問題的通用算法.(三)條件結構及其應用1.給出以下四個問題,輸入一個數x,輸出它的相反數.求面積為6的正方形的周長.求三個數a,b,c中的最大數.求函數的函數值. 其中不需要用條件語句來描述其算法的有 ( )A. 1個 B. 2個 C. 3個 D. 4個2.圖中所示的算法的功能是_(求兩個數中的最大數)3.根據題意,完成流程圖填空:輸入兩個數,輸出這兩個數差的絕對值.三、課后作業1.(2009浙江卷理)某程序框圖如圖所示,該程序運行后輸出的的 值是( )A B C D (第一題) (第二題)2、(2009遼寧卷文)某店一個
16、月的收入和支出總共記錄了 N個數據 ,。,其中收入記為正數,支出記為負數。該店用右邊的程序框圖計算月總收入S和月凈盈利V,那么在圖中空白的判斷框和處理框中,應分別填入 ( )下列四個選項中的A.A0,VST B. A0,VSTC. A0, VSTD.A0, VST 3、(2009天津卷理)閱讀上(右)圖的程序框圖,則輸出的S= ( ) A 26 B 35 C 40 D 57、(2009年廣東卷文)某籃球隊6名主力隊員在最近三場比賽中投進的三分球個數如下表所示: 隊員i123456三分球個數下圖(右)是統計該6名隊員在最近三場比賽中投進的三分球總數的程序框圖,則圖中判斷框應填 ,輸出的s= (注:框圖中的賦值符號“=”也可以寫成“”或“:=”)(第四題) (第五題)5、(2009廣東卷理)隨機抽取某產品件,測得其長度分別為,則圖3所示的程序框圖輸出的 ,表示的樣本的數字特征是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 架空輸電線路輸電設備安裝質量缺陷及預控措施
- 中小學教學活動管理心得體會
- 家風家教心得體會與殘障兒童關愛
- 醫用電子技術專業實習總結范文
- 三年級下冊道德與法治課堂管理計劃
- 消防演練演習準備流程
- 互聯網+DIY手工創業計劃書范文
- 美容院預約診療健康管理流程
- 以實踐為翼:大學生社會實踐在馬克思主義大眾化中的功能與提升路徑
- 檢驗科醫師職責解析
- 防汛物資儲備定額編制規程(SL298-2024)
- 營運車輛入股協議書
- 綜合實踐:畫數學連環畫(大單元教學設計)一年級數學下冊北師大版2025
- 2025年大學英語六級考試試卷及答案
- 水工程概論課件
- 詐騙還款協議書范本
- 研學活動協議書合同協議
- 2025年教師參加初中英語新教材培訓心得體會
- 2025「活躍用戶」研究報告(小紅書平臺)
- 獸醫學基礎試題及答案
- 交警122接處警工作規范
評論
0/150
提交評論