




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
學必求其心得,業必貴于專精學必求其心得,業必貴于專精學必求其心得,業必貴于專精1。2.2整體設計教材分析在一個算法中經常會遇到對一個條件進行判斷,如果條件成立則執行某個操作,如果條件不成立則執行另一個操作.因此在算法的流程圖中,根據條件是否成立有著不同的流向。像這種根據條件作出判斷,再決定執行哪一種操作的結構稱為選擇結構(selectionstructure)(或稱“分支結構”)。一個選擇結構都包含一個判斷框,當條件成立時執行標有“Y”或者“是”的分支,當條件不成立時執行標有“N”或者“否”的分支。圖1的虛線框內就是常見的幾種選擇結構,在(1)中,當條件“n>3"成立時執行A,否則執行B;在(2)中,當條件“n>3”成立時執行A,否則直接脫離選擇結構;在(3)中,當條件“n〉3”成立時直接脫離選擇結構,否則執行B。圖1對于選擇結構要注意以下幾點:(1)在選擇結構中不論條件是否成立,只能執行A框或者B框之一,不能既執行A框,又執行B框,即“Y”和“N”兩者之中只能選擇一個,不能兩者都選擇;(2)在選擇結構中不論條件是否成立,必須執行A框或者B框之一,不能既不執行A框,又不執行B框,即“Y”和“N"兩者之中必須選擇一個,不能兩者都不選擇;(3)A框和B框中可以有一個是空的,即可以不執行任何操作直接脫離選擇結構,但是不能兩個框都是空的;(4)無論走哪條路徑,執行完A或者B之后都經過P,然后才脫離選擇結構;(5)選擇結構可以是嵌套的,即在選擇結構之中還可以出現選擇結構,這種結構主要是出現在有多個條件判斷的算法中;(6)選擇結構可以和其他結構嵌套,形成比較復雜的結構;(7)A框或者B框可以不止一個操作,A框本身就可以是一個獨立的算法結構.三維目標1.通過實例的訓練,使學生理解選擇結構的意義。2.能用流程圖表示選擇結構以及能用選擇結構的流程圖表示簡單問題的算法,養成良好的邏輯思維習慣,發展有條理的思考與表達能力,達到提升學生邏輯思維能力的目標。重點難點教學重點:用選擇結構的流程圖表示算法.教學難點:多個選擇結構的嵌套。課時安排1課時教學過程導入新課設計思路一:(情境導入)如果坐火車從上海到南京,可以坐普通特快列車,費時3小時左右,最低票價為硬座52元;也可以坐新型的動車組列車,費時2小時左右,最低票價為二等座93元.如果你有急事要從上海趕往南京,打算坐什么車?如果你周末到南京度假,晚上出發,到了南京后就可以休息了,那從經濟角度出發,打算坐什么車?圖2這個問題顯而易見,坐什么車要根據情況來確定,如果“有急事”,那么就坐動車組,如果“沒有急事”,那就坐普通特快列車。你不可能在一次去南京的途中兩種列車都坐,在限定了坐上述兩種火車的前提下,也只能在兩種中選擇一個,到底選擇哪一個,就看條件“有急事”是否成立。這個問題我們可以用很簡單的圖形(圖2)來表示:這是一個流程圖,在這個流程圖中,我們先要對“有急事"這個選擇框進行判斷,然后根據判斷結果選擇不同的流向,這個結構就是選擇結構.(引入新課,板書課題——選擇結構)設計思路二:(問題導入)前面我們學習了算法和流程圖,并學習了用流程圖來表示算法.現在請你設計一個求一元二次方程ax2+bx+c=0(a≠0,Δ>0)的算法,并畫出流程圖.當然,我們先要輸入a,b,c的值,然后計算Δ=b2-4ac,由于題目提供了Δ〉0的限制條件,所以可以直接利用一元二次方程的求根公式x1,2=,最后輸出兩個根x1和x2即可。因此算法如下:圖3S1輸入a,b,c;S2Δ←b2-4ac;S3x1,2←;S4輸出x1,x2.流程圖如圖3所示.如果題目中刪去條件Δ〉0,則能不能仍然按照圖3的流程圖操作呢?顯然是不行了,因為在計算x1,2=時,如果Δ〈0,則無法計算。因此我們先要對是否滿足“Δ>0"進行判斷,如果滿足條件,即條件成立,則計算x1,2=,然后再輸出x1,x2;否則就直接輸出“方程無實根”.在這個問題中,我們先要對“Δ>0"這個條件進行判斷,然后根據判斷結果選擇不同的操作步驟,這個結構就是選擇結構。(引入新課,板書課題——選擇結構)推進新課新知探究某鐵路客運部門規定甲、乙兩地之間旅客托運行李的費用為其中w(單位:kg)為行李的重量。為了計算行李的托運費,應先判斷行李的重量是否大于50kg,然后再選用相應的公式進行計算。請同學們給出計算費用c(單位:元)的一個算法,并嘗試畫出流程圖。算法如下:S1輸入行李重量w;S2如果w≤50,那么c←0。53×w,否則c←50×0。53+(w-50)×0.85;S3輸出行李重量w和托運費c.畫流程圖時遇到了麻煩,僅僅用我們前面學過的順序結構將無法解決,因為我們必須在輸入行李重量w后先對是否符合w≤50進行判斷,再根據判斷的不同結果選擇不同的計算公式.對w≤50的判斷結果無非就是兩種,一種是“成立",另一種是“不成立”,或者說一種是“是”,另一種是“否",因此說問題的關鍵是對行李重量是小于等于50,還是大于50的處理.所以流程圖的畫法可以如圖4所示:圖4圖4的流程圖在菱形框處出現了“是”與“不是”的判斷,需要選擇,然后根據條件是否成立來確定不同的流向。像這樣先根據條件是否成立作出判斷,再決定執行哪一種操作的結構就稱為選擇結構(selectionstructure).圖5的虛線框內就是一個選擇結構,它包含一個判斷框,當條件P成立(或稱為“真”)時執行A,否則執行B.圖5應用示例思路1例1設計一個求一元二次方程ax2+bx+c=0(a≠0)的算法,并畫出流程圖。分析:由于本題沒有了條件Δ〉0,因此這個一元二次方程未必總有實根,所以要先判斷Δ≥0是否成立,如果成立,則計算x1,2=,再輸出x1,x2,否則直接輸出“方程無實根”.解:算法如下:S1輸入a,b,c;S2Δ←b2-4ac;S3如果Δ≥0,那么x1,2←,否則輸出“方程無實根";S4輸出x1,x2.流程圖如圖6所示:圖6點評:本題如果是直接討論后解方程,相信學生不會有太大的難度,寫算法就是把解題過程中體現的思路和具體的操作步驟寫出來,所以我們只需要怎么樣解題就怎么樣表述.例2任意給定3個正實數,設計一個算法,判斷分別以這三個數為三邊長的三角形是否存在,并畫出這個算法的流程圖.分析:判斷分別以這3個數為三邊長的三角形是否存在,只需要驗證這三個數當中任意兩個數的和是否大于第三個數,這就需要用到選擇結構.解:算法如下:S1輸入a,b,c;S2計算a+b,b+c,a+c;S3判斷a+b〉c,b+c〉a,c+a>b是否同時成立,如成立,則輸出存在這樣的三角形;如不成立,則輸出不存在這樣的三角形.流程圖如圖7所示:圖7點評:判斷三個實數a,b,c能不能分別為一個三角形的三邊長,需要對每兩條邊長之和是否大于第三邊進行判斷,不能只判斷一個式子.當然如果已知最大邊也可以只判斷一個.例3根據下面的算法,畫出相應的流程圖,并說明這個算法的功能.S1輸入x;S2如果x≥-1,那么y=x2+1,否則y=2x-1;S3輸出y.分析:根據算法,對每一個輸入的x的值,如果x≥-1,那么就代入y=x2+1計算y的值,否則就代入y=2x-1計算.可以看出這是一個分段函數求函數值的問題,流程圖中需要用到選擇結構,對x≥-1是否成立作出判斷,然后根據判斷的結果選擇流向。解:流程圖如圖8所示:圖8這個算法的功能是求分段函數的函數值.點評:所給算法中第二步S2是一個選擇判斷的步驟,因此在流程圖中要用選擇結構來表示.當條件“x≥-1"的判斷結果為“Y”時,執行y←x2+1,否則就執行y←2x-1。例4已知符號函數y=sgn(x)=,試寫出該函數的算法及流程圖。分析:符號函數y=sgn(x)實際上是一個分段函數,對應不同的輸入的x的值,取不同的輸出結果,所以應該利用選擇結構來畫出流程圖.解:算法如下:S1輸入x;S2如果x〉0,那么y←1;如果x=0,那么y←0;如果x〈0,那么y←-1;S3輸出y.流程圖如圖9所示:圖9點評:1.求分段函數的函數值的流程圖的畫法:如果是分兩段的函數,只需要引入一個選擇框;如果是分三段的函數,則需要引入兩個選擇框;依此類推。2.為了讓每一個算法步驟中只含有一個選擇語句,本題算法也可如下表示:S1輸入x;S2如果x〉0,那么y←1;S3如果x=0,那么y←0,否則y←-1;S4輸出y.思路2例1輸入三個實數a,b,c,寫出求這三個數中最大數的流程圖。分析:本題思路方法為:先把a和b,c進行比較,若a〉b且a>c,那么a最大,輸出a,否則再比較b和c,若b〉c,則b最大,輸出b,否則c最大,輸出c,整個過程中用到了多次選擇結構。解:流程圖如圖10所示:圖10點評:本題需要進行兩次判斷,因此會出現兩個選擇結構,則兩個選擇結構可以通過嵌套來實現.例2對于一元二次不等式ax2+bx+c>0,(a≠0,Δ=b2-4ac≠0),給出求這個不等式的解集的算法,并畫出流程圖.分析:解一元二次不等式時,先要判斷二次項系數a的正負,它決定了不等式的解集的形式,在確定了二次項系數的正負后還要對Δ=b2-4ac的正負進行判斷,最后才能得到一元二次不等式的解集.解:算法如下:S1輸入a,b,c;S2計算Δ=b2-4ac;S3如果a>0,那么執行S4,否則執行S6;S4如果Δ〉0,則計算x1=,x2=;否則輸出“不等式的解集為R”,程序結束;S5輸出“不等式的解集為(-∞,x1)∪(x2,+∞)”,程序結束;S6如果Δ>0,則計算x1=,x2=;否則輸出“不等式的解集為”,程序結束;S7輸出“不等式的解集為(x1,x2)”,程序結束.流程圖如圖11所示:圖11點評:本題的流程圖看似復雜,但是只要理解了一元二次不等式的求解程序,就不難畫出流程圖。不過本題畢竟要有多次選擇結構的嵌套使用,因而有一定難度,老師們可以根據實際情況選用.當然,如果單純為了降低難度,也可以加強題目的條件,譬如增加條件Δ>0或者a〉0,這樣可以大大減少選擇框的個數.知能訓練一、課本本節練習1、3。解答:1。流程圖如圖12所示:圖122。算法如下:S1輸入a,b;S2如果a≠0,那么x←-,并輸出x;否則,如果b≠0,那么輸出“無解";否則,輸出“解為全體實數”.流程圖如圖13所示:圖13二、補充練習1。寫出求函數y=ax+1(a為常數且a≠0),x∈[-2,2]的值域的一個算法,并畫出流程圖。2。某商場搞促銷活動,購物標價不超過100元時,按九折付款,超過100元,則超過部分按七折付款。寫出商場收費的算法,并畫出流程圖.解答:1。算法如下:S1輸入a;S2計算m←-2a+1,n←2a+1;S3如果a>0,則輸出“值域為[m,n]”,否則,輸出“值域為[n,m]".流程圖如圖14所示:圖142.算法如下:S1輸入總價x;S2如果x≤100,則計算y←0.9x,否則,計算y←0。7x+20;S3輸出y.流程圖如圖15所示:圖15點評:選擇結構要比順序結構復雜,因此可以先寫出算法,然后再畫出流程圖.課堂小結1.在用選擇結構解決問題的過程中,需要按給定的條件進行判斷,并按判斷的不同情況進行不同的操作。2。若需要按多個條件進行判斷,可以用兩個或兩個以上選擇結構嵌套來實現.如解不等式ax〉b,需要分a=0,a〉0,a<0這三類討論,所以要先判斷a=0是否成立,再判斷a〉0是否成立,不能直接判斷出來分三條途徑.也就是說選擇結構只有兩個出口,是一進二出的形式。作業1。兒童乘坐火車時,若身高不超過1.1m,則無需購票;若身高超過1。1m但不超過1.4m,則購買半票;若身高超過1。4m,則購買全票.試設計一個購票的算法,并畫出流程圖.2.設計算法流程圖,判斷直線ax+by+c=0(ab≠0)與圓(x-x0)2+(y-y0)2=r2(r〉0)的位置關系,要求輸入參數a,b,c和x0,y0,r,輸出相關信息.解答:1.算法如下:S1輸入身高h;S2如果h≤1.1,那么輸出“免票”;否則,如果1。1<h≤1。4,那么輸出“半票”;否則,輸出“全票”.流程圖如圖16所示:圖162.流程圖如圖17所示:圖17設計感想選擇結構是算法流程圖中又一種常用的結構,它比順序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業案場精細化管理
- 2025年飛機維修船塢項目規劃申請報告
- 手動訓練師面試題及答案
- 武漢理化試題及答案
- gmp考試題及答案
- 動物免疫考試題及答案
- 社會職工面試題及答案
- 中軟國際外包java面試題及答案
- redisjava高頻面試題及答案
- 員工培訓需求調查分析
- 2024年CAD工程師認證考試的題型解析試題及答案
- 2025年北方華創工作人員招聘考試筆試試題
- 2025-2030中國救護車市場發展分析及市場趨勢與投資方向研究報告
- 期末證據法學試題及答案
- 2025年科技節活動小學科普知識競賽題庫及答案(共80題)
- 露天礦山事故警示教育
- 大數據治理與服務平臺建設及數據服務運營實施技術方案
- 電氣實驗室工作人員崗位職責
- 2025年-甘肅建筑安全員-C證考試(專職安全員)題庫及答案
- 高壓滅菌鍋使用管理制度
- 勞務施工總承包合同
評論
0/150
提交評論