資源簡介 (共15張PPT)3.2算法及其描述學習目標能理解算法的概念,掌握算法的基本特征。能夠掌握描述算法的3種基本方法。基礎性目標能夠利用3種基本結構解決簡單問題拓展性目標結合漢字找不同問題,嘗試利用3種方法描述解決問題的方法挑戰性目標學習新知1、認識算法算法是指在有限步驟內求解某一問題所使用的一組定義明確的規則。通俗地說,算法就是用計算機求解某一問題的方法,是能被機械地執行的動作或指令的有窮集合。2、算法的特征有窮性確定性數據輸入可行性數據輸出學習新知3、算法的描述算法是對解題過程的精確描述,需要使用一些方法來表示。描述算法的常用方法有:用自然語言描述算法用流程圖描述算法用偽代碼描述算法①讀取excel文件。②設置要查找的目標文字。③在excel表中逐個單元格的查找是否有目標文字。④如果找到就輸出所在單元格的行和列的位置。否則繼續找,直到把整個表格都查找完為止。(1)用自然語言描述算法學習新知學習新知(2)用流程圖描述算法將“漢字找不同” 自然語言描述算法轉為流程圖描述算法。2)用流程圖描述算法①讀取excel文件。②設置要查找的目標文字。③在excel表中逐個單元格的查找是否有目標文字。④如果找到就輸出所在單元格的行和列的位置。否則繼續找,直到把整個表格都查找完為止。開始設置目標文字讀取excel文件遍歷所有單元格判斷單元格的值是否等于目標值結束YYN輸出行和列信息import openpyxlworkbook=openpyxl.load_workbook('漢字找不同.xlsx') sheet=workbook.activetarget_value='學'for row in sheet.iter_rows():for cell in row:if (cell.value==target_value){row_index=row[0].row;column_index=cell.column ;"不同字所在的行和列分別為",row_index,column_index}用偽代碼描述算法(書寫方便,無圖形符號,文字和符號,易于理解)用偽代碼描述算法就是用介于自然語言和計算機語言之間的文字和符號來描述算法。(3)用偽代碼描述算法學習新知探究實踐 ——完善流程圖 P51輾轉相除法——求最大公約數設定的兩個正整數位m和n,求它們的最大公約數的步驟為:①以m除以n,令所得的余數為R。②若r=0,則輸出結果n,算法結束;否則,繼續步驟③。③令m=n,n=r,并返回步驟①繼續進行。將上述算法的流程圖補充完整。流程圖描述開始輸入正整數m,nR=0?m=n輸出 nn=R結束輸出nYNr=m%n+ - * / % ** //加 減 乘 除 求余 冪運算 整除(商)能力提升——完善算法十進制整數轉換為二進制整數采用“除2取余”法。以下是“除2取余”法的自然語言算法表達,請將不完整的流程圖補充完整。第1步:輸入一個十進制正整數n;第2步:將n除以2,記錄余數r;第3步:將r追加到字符串s的左邊(s用于記錄轉換后 的二進制數,初值為空);第4步:將n除以2的商賦給n;第5步:若n為0,則轉到第6步;若n不為0,轉到第2步;第6步:輸出s(即逆序輸出每一次的余數)自然語言算法描述能力提升——完善流程圖十進制整數轉換為二進制整數采用“除2取余”法。以下是“除2取余”法的自然語言算法表達,請將不完整的流程圖補充完整。第1步:輸入一個十進制正整數n;第2步:將n除以2,記錄余數r;第3步:將r追加到字符串s的左邊(s用于記錄轉換后 的二進制數,初值為空);第4步:將n除以2的商賦給n;第5步:若n為0,則轉到第6步;若n不為0,轉到第2步;第6步:輸出s(即逆序輸出每一次的余數)輸入十進制正整數nr=n除2的余數開始r追加到s左邊n=n//2結束YN+ - * / % ** //加 減 乘 除 求余 冪運算 整除(商)求最大公約數開始輸入正整數m,nR=0?m=n輸出 nn=R輸出nYNr=m%nr=0?m=nn=R結束輸入十進制正整數nr=n除2的余數開始r追加到s左邊n=n//2n=0 輸出s結束YN學習新知基本控制結構順序結構選擇結構(分支結構)循環結構注意:任何復雜的算法都可以用這三種基本控制結構組合來表示。THANK YOU 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫