3.2算法及其描述《數據與計算》粵教版公開課一等獎課件省賽課獲獎課件_第1頁
3.2算法及其描述《數據與計算》粵教版公開課一等獎課件省賽課獲獎課件_第2頁
3.2算法及其描述《數據與計算》粵教版公開課一等獎課件省賽課獲獎課件_第3頁
3.2算法及其描述《數據與計算》粵教版公開課一等獎課件省賽課獲獎課件_第4頁
3.2算法及其描述《數據與計算》粵教版公開課一等獎課件省賽課獲獎課件_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

粵教版一般高中教科書信息技術必修1數據與計算3.2算法及其描述第1頁3.2.1算法角度概念專業規則求解某一問題有限步驟明確定義通俗措施-有窮集合動作或指令機械地執行第2頁3.2.1討論問題:學期結束時,老師打算花50塊錢購買某些筆記本獎勵體現優秀同窗,請班長小明幫忙,小明決定買三種單價分別為6元、5元、4元筆記本,請問能夠買多少本?第3頁3.1.1探究“6x+5y+4z=50正整數解個數t”①t=0;②x=1;③y=1;④z=1;⑤假如滿足6x+5y+4z=50,則解個數加1,并輸出這個解。⑥z=z+1;⑦假如z≤12則轉步驟⑤,不然繼續步驟⑧;⑧y=y+1;⑨假如y≤10則轉步驟④,不然繼續步驟⑩;⑩x=x+1;?假如x≤8則轉步驟③,不然繼續步驟?;?結束。第4頁3.2.1算法特性特性解釋有窮性計算步驟有限確定性每一種步驟都是明確數據輸入零個或多種數據輸出一種或多種可行性能夠得到成果第5頁3.2.2算法描述算法描述優勢不足自然語言表達法用人們日常所用語言,比較容易掌握。當算法中具有多分支或循環操作較多時很難清楚地表達出來,由于自然語言歧義性,容易造成算法執行不確定性。流程圖表達法用程序框圖來描述,流程描述清楚簡潔。所占篇幅較大,由于允許使用流程線,過于靈活,不受約束。偽代碼表達法用介于自然語言和計算機語言之間文字和符號來描述,書寫方便,格式緊湊,易于理解,便于向計算機程序設計語言過渡。由于編程語言種類繁多,偽代碼語句不容易規范,有時會產生誤解。第6頁3.2.2流程圖描述法-流程圖基本圖形及其功能圖形名稱功能開始/結束算法開始或結束輸入/輸出變量輸入或輸出處理變量計算與賦值判斷算法中條件判斷流程線表達算法中流向?連接點表達算法中連接第7頁3.2.2流程圖描述法x循環次數8y循環次數10z循環次數12總循環次數:8×10×12=960從中找出所有成立解第8頁3.2.2偽代碼描述法概念解釋偽代碼描述法介于自然語言文字和符號計算機語言特點易于轉變為計算機程序t=0forxinrange(1,9):

foryinrange(1,11):

forzinrange(1,13):

if(x*6+y*5+z*4==50)

{t=t+1;給出解個數t及對應三個整數x,y,z}第9頁3.2.2求方程“6x+5y+4z=50正整數解個數t”程序及運行成果t=0forxinrange(1,9):foryinrange(1,11):forzinrange(1,13):ifx*6+y*5+z*4==50:t=t+1print(x,y,z)print("總數:",t,"個")方案xyz合計11461121811032271142621053431064241076219第10頁3.2.2求最大條約數-輾轉相除法-自然語言描述法①以m除以n,令所得余數為R。②若R=0,則輸出成果n,算法結束;不然,繼續步驟③。③令m=n,n=R,并返回步驟①繼續進行。求最大條約數步驟:第11頁3.2.2求最大條約數-輾轉相除法-程序框圖開始結束輸入m,nR=m%nR!=0?輸出nm=n,n=RYN在輸入兩個數字m和n時,是否需要確保m大于n?第12頁3.2.2求最大條約數-輾轉相除法-偽代碼m=int(input(“m=”))#接收一種數并轉換成整數n=int(input(“n=”))#接收另一種數并轉換成整數R=m%n#求余數whileR!=0:#當余數不為0時循環m=n#將除數給mn=R#將余數給nR=m%n#求余數print(n)#輸出最大條約數第13頁3.2.2求最大條約數-更相減損術-自然語言描述法①以m減去n,令所得差為R。②若R=0,則輸出成果n,算法結束;不然,繼續步驟③。③令m=n,n=R,并返回步驟①繼續進行。求最大條約數步驟:第14頁3.2.2求最大條約數-更相減損術-程序框圖開始結束輸入m,nR=m-nR!=0?輸出nm=n,n=RYN在輸入數據時,要確保m比n大,不然,要在程序中將m和n調換。第15頁3.2.2求最大條約數-更相減損術-偽代碼m=int(input(“m=”))#接收一種數并轉換成整數n=int(input(“n=”))#接收另一種數并轉換成整數ifm<n:

m,n=n,m#假如m<n,則二者交換R=m-nwhileR!=0:m=n;n=R;ifm<n:m,n=n,mR=m-nprint(n)第16頁3.2.2求最小公倍數算法:兩數相乘,除以最大條約數m=int(input(“m=”))n=int(input(“n=”))s=m*n#二者相乘R=m%nwhileR!=0:m=nn=RR=m%nprint(int(s/n))#除以最大條約數第17頁3.2.2三種基本控制構造第18頁3.2.2三種基本控制構造基本構造作用次序按先后次序執行選擇條件→分支單選、雙選和多項選擇循環滿足條件反復執行直到條件不滿足第19頁使用三種基本控制構造組合來描述算法,能夠改善算法清楚度,提升算法可讀性。討論試結合教材P50“圖3-8求整數解流程圖”當中三種基本控制構造圖1次序構造圖2選擇構造

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論