《221《算法的基本結構及設計》課件yuanlaide》由會員分享,可在線閱讀,更多相關《221《算法的基本結構及設計》課件yuanlaide(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、2算法框圖的基本結構及設計2.1順序結構與選擇結構算法框圖算法框圖:又稱程序框圖程序框圖或流流程圖程圖,是一種用規(guī)定的圖形、指向線及文字說明來準確、直觀地表示算法的圖形。起、止框起、止框輸入、輸出框輸入、輸出框處處 理理 框框判判 斷斷 框框流流 程程 線線流流 程程 圖圖 常常 用用 圖圖 形形連接程序框圖的兩個部分連接點連接流程框,指明方向流程線用于判斷,有兩個出口判斷框賦值和計算處理框(執(zhí)行框)表示輸入和輸出的信息輸入、輸出框表示一個算法的起始和結束終端框(起止框)功能名稱圖形符號 學習這部分知識的時候,要掌握各個圖形的形狀、作用及使用規(guī)則,畫程序框圖的規(guī)則如下:1、使用標準的圖形符號。
2、2、框圖一般按從上到下、從左到右的方向畫。3、除判斷框外,大多數(shù)流程圖符號只有一個進入 點和一個退出點。判斷框是具有超過一個退出 點的唯一符號。4、判斷框分兩大類,一類判斷框是“是”與“否”兩分 支的判斷,而且有且僅有兩個結果;另一類是 多分支判斷,有幾種不同的結果。5、在圖形符號內描述的語言要非常簡練清楚。練習1 下列功能中處理框沒有的是( )A.賦值 B.計算 C.判斷 D.以上都不對練習2 關于框圖的圖形符號的理解,正確的有_任何一個框圖都必須有起止框;輸入框只能放在開始框后,輸出框只能放在結束框之前;判斷框是唯一具有超過一個退出點的圖形符號;對于一個程序來說,判斷框內的條件是唯一的.假
3、假順序結構步驟甲步驟甲步驟乙步驟乙選擇結構真真條件條件步驟甲步驟甲步驟乙步驟乙7 7、用算法框圖分別表示順序結構和選擇結構。、用算法框圖分別表示順序結構和選擇結構。探探 究究尺規(guī)作圖,確定線段尺規(guī)作圖,確定線段AB的一個的一個5等分點等分點ABGPFEC DM 作法:如圖作法:如圖1、過、過A作射線作射線AP2、在射線、在射線AP上任取一點上任取一點C,得線段得線段AC3、在射線、在射線AP上作線段上作線段AC=CE=EF=FG=GD4、連接、連接BD, 過過C作作 CM / BD ,交交AB 于于 M5、M為所作的為所作的AB的一個的一個 5 等分點等分點開始開始從從A出發(fā)作一條射線出發(fā)作一
4、條射線在射線上取點在射線上取點C得線段得線段AC在射線上作在射線上作CE=EF=FG=GD=AC ,并連接,并連接BD過過C作作BD的平行線交的平行線交AB于于M , 即得即得AB的一個的一個5等分點等分點結束結束算法算法流程圖流程圖AB 順順 序序 結結 構構1 1、設計一個算法、設計一個算法, ,求一元求一元二次方程二次方程axax2 2+bx+c=0+bx+c=0(a0, ba0, b2 2-4ac0-4ac0)的根)的根, ,畫出相應的框圖畫出相應的框圖. . 輸入輸入系數(shù)系數(shù)a,b,ca,b,c輸出輸出X X1 1、X X2 2結束結束開始開始計算計算順序結構順序結構探究探究2 2、
5、設計一個算、設計一個算法法, ,求一元二次求一元二次方程方程axax2 2+bx+c=0+bx+c=0(a0a0)的根)的根, ,畫出相應的框圖畫出相應的框圖. . 輸入輸入a,b,ca,b,c輸出輸出x x1 1,x,x2 2結束結束開始開始00,則x的絕對值等于x,令m=x;若x0,則執(zhí)行第二步.第二步第二步, x的絕對值等于x,令m=x;第三步第三步,輸出m.算法分析:m=-x開始輸入xx0m=x輸出m否是結束結束 選選 擇擇 結結 構構順序結構 由若干個依次執(zhí)行的處理步驟組成的邏輯結構。這是任何一個程序都離不開的基本結構。AB 在一個算法中,經常會遇到一些條件的判斷,算法的流程根據(jù)條件
6、是否成立有不同的流向,這種算法結構稱為條件結構。選擇結構真真假假條件條件步驟甲步驟甲步驟乙步驟乙1 一個船工要送一匹狼、一只羊和一顆白菜過河.每次只能帶一樣,并且狼和羊不能單獨在一起,山羊和白菜也不能單獨在一起。應該如何渡河? 開始船工送羊過河船工獨自回來船工帶羊回來船工送狼過河船工送白菜過河船工獨自回來船工送羊過河結束課堂練習:1.寫出下列程序的運行結果.(1)圖(1)中,輸出S=_(2) 圖(2)中,若R=8,則a=_開始結束輸入a,ba=2b=4輸出SbaSab圖(1)開始結束輸入Ra=2b輸出a圖(2)2Rb 2.下圖的作用是判斷輸入數(shù)x的奇偶性,則處應為_開始結束輸入x輸出“x是奇數(shù)
7、”輸出“x是偶數(shù)”R=x除以2的余數(shù)是否2.通常說一年有通常說一年有365天,它表示地球圍繞太陽天,它表示地球圍繞太陽轉一周所需要的時間,但事實并不是這樣簡轉一周所需要的時間,但事實并不是這樣簡單。根據(jù)天文資料,地球圍繞太陽轉一周所單。根據(jù)天文資料,地球圍繞太陽轉一周所需要的精確時間是需要的精確時間是365.2422,稱之為天文年。,稱之為天文年。這個誤差看似不大,卻引起季節(jié)和日歷之間這個誤差看似不大,卻引起季節(jié)和日歷之間難以預料的大變動。在歷法上規(guī)定四年一閏,難以預料的大變動。在歷法上規(guī)定四年一閏,百年少一閏,每四百年又加一閏。如何判斷百年少一閏,每四百年又加一閏。如何判斷某一年是不是閏年呢
8、?請設計一個算法,并某一年是不是閏年呢?請設計一個算法,并用框圖表示這個算法用框圖表示這個算法分析理解:設分析理解:設y為年份,如果為年份,如果Y是閏年,那么是閏年,那么或者或者y能被能被4整除不能被整除不能被100整除,或者整除,或者y能被能被400整除。整除。解:算法步驟:1.若y不能被4整除,則輸出“y不是閏年”。2.若y不能被4整除,則判斷y是否能被100整除;(1)若y不能被100整除,則輸出“y是閏年”;(2)若y能被100整除,則判斷y是否能被400整除;若y能被400整除,則輸出“y是閏年”;若y不能被400整除,則輸出“y不是閏年”;開始開始輸入輸入y4整除整除y輸出輸出y不
9、是閏年不是閏年結束結束是是否否輸出輸出y是閏年是閏年100整除整除y400整除整除y是是否否是是否否4、閱讀下面的流程圖中,若輸入的數(shù)據(jù)a,b,c 分別是7,9,6,則輸出的結果是( ) A 、6 B 、9 C 、7 D、7,9, 6NYNY開始開始輸入輸入a,b,c的值的值abbc輸出輸出a輸出輸出b輸出輸出c結束結束ac輸出輸出cNYB課后練習1兩種解法對比開始結束輸入xX1000Y=0X5000Y=2%*xX10000Y=3%*xY=5%*x輸出Y是是是否否否開始結束輸入x輸出YX10000X5000X1000Y=5%*XY=3%*XY=2%*xY=0是是是否否否作業(yè):P90 2 及補充作業(yè)補充作業(yè)1:寫出已知梯形的兩底和高寫出已知梯形的兩底和高分別是分別是a、b、h的值,求的值,求梯形的面積的算法框圖。梯形的面積的算法框圖。補充作業(yè)2:已知函數(shù) ,設計程序框圖求對于任意給定x值,求y的值。1,00,01,0 xyxx過去的,讓它過去,永遠不要回顧;未來的,等來了時再說,不要空想;我們只抓住了現(xiàn)在,用我們現(xiàn)在的理想,做我們所應該做的. 茅盾