資源簡介 教學設計課例名稱 2.2 算法的概念及描述學段學科 高中 信息技術 教材版本 人教中圖版2019第1版章節 第二章 第二節 年級 高一核心素養 目標 經歷用自然語言、流程圖、偽代碼等方法描述算法的過程,體驗在用計算機解決問題中,不同的算法會產生不同的運行效率(計算思維)。 選用恰當的描述方法和控制結構表示簡單算法,增強用算法解決問題的意識(信息意識)。 3、關注算法設計的意義(信息社會責任)。教學重難點 1、教學重點: 經歷用自然語言、流程圖、偽代碼等方法描述算法的過程。 2、教學難點: 通過設計算法掌握算法在解決問題中的地位和作用。教材分析 在運用計算機解決問題的過程中,算法設計是一個重要環節,不同的算法會產生不同的運行效果。面對迅猛的科學技術,算法已經和我們的生活密不可分。 本節以智力游戲和現實問題入手,介紹算法的概念、算法的特征、算法的描述。選用現實生活案例是讓學生經歷用自然語言、流程圖、偽代碼等方法描述算法的過程;用經典項目體驗算法的設計的意義及文化價值。教學策略 本節從探究活動入手,經歷分析問題,設計和描述算法,通過“探究——思考——歸納——比較——交流”等教學環節開展教學。 充分利用項目活動,創設學習情境,引導學生關注算法在社會生活中的應用,激發學習熱情。教學 環節 教師活動 學生活動 設計 意圖分析現實問題 1.通過智力小游戲和生活案例,拉開本節教學的序幕。 2.引導學生尋找生活中在算法應用的例子,強化算法概念。 探究一:學生完成 Flash智力游戲 探究二:開動腦筋,解決身邊事。 某一餐館門口海報上寫著“不要錢的午餐”, 規則如下:在三個月內,來賓必須湊夠五個人,五人每次來就餐必須按照不同的順序坐,直到把所有可能的順序都坐一遍,以后來吃飯就可永遠免費 。于是有人想,這太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友參加這項活動,可是,吃了十次之后,還沒有吃上免費午餐,這是怎么回事呢? 算法已經滲透到了人們生活、娛樂、學習等方方面面,讓學生在有趣、有疑、有思、有情下開展學習。新課講解 通過演示文稿介紹: 認識算法 算法特征 算法描述 1、思考為什么學習算法。 2、了解算法在解決問題中的作用 3、體驗算法的奧妙,并將所學知識應用到解決實際問題中去。 明確學習目標,為下一環節學生進行自主學習打基礎。解決問題 引導學生經歷用自然語言、流程圖、偽代碼等方法描述算法的過程 助力學生選用恰當的描述方法和控制結構表示簡單算法。 1、以上述“天下真有不要錢的午餐”為項目,進行探究,小組協作建構算法。 重點是用流程圖表示: 2、算法描述方式的比較,歸納總結各種算法的形式優點與不足。 啟發學生對現實問題進行有針對性思考,培養學生運用計算機解決實際問題的意識,關注算法在生活中的應用。探究協作 問題一、: 我國南北朝時的重要數學著作《孫子算經》有這樣 一個問題:今有物不知其數:三三數之余二,五五數之余三,七七數之余二,問物幾何 問題二: 在上述問題基礎上再加深。求整除3余1、整除5余2、整除7余4、整除13余6、 整除17余8的最小自然數。 探究一: 1、分析問題,找出已知和未知、列出已知和未知的關系,及人工算術解題步驟(后附表1)。 2、構建流程圖算法 3、用偽代碼描述: x=1 while not(x % 3==2 and x% 5==3 and x % 7==2): x=x+1 print(“滿足條件的數是:”,x) 體會項目中的文化價值,以及算法的思想掌握算法在問題解決中的地位和作用閱讀拓展 引導學生了解更多的知識,構建網絡學習平臺。 學生充分利用網絡,查找相關內容 1、網上搜索“算法的歷史”相關資料。 2、程序語言的發展。 機器語言 匯編語言 高級語言 3、網上搜索“程序設計語言產生背后的故事”相關資料。 通過知識的延伸,促使學生將知識內化,并進一步感受本節課知識的地位與作用。附:表1分析問題(找出已知和未知、列出已知和未知的關系) 人工算術解題步驟有物不知其數 X 三三數之剩二 X÷3=y1余2 五五數之剩三 X÷5=y2余3 七七數之剩二 X÷7=y3余2 問物幾何? X 令 X 為1 如果X整除3余1,X整除5余2, X整除7余4, X整除13余6, X整除17余8,則記下這個 X。 令X 為 x+1 如果算出,則結束;否則跳轉 。 寫出答案。(共25張PPT)第一節算法的概念及描述算法與程序設計目 錄CONTENTS認識算法描述算法深入探究 完成任務分析現實問題一二三四一分析現實問題一分析現實問題有三個秀才和三個妖怪過河,只有一條能裝下兩位的船,在渡河過程中,兩岸邊妖怪的人數如大于秀才的人數,秀才就會被吃掉。請找出安全的渡河方法,寫一寫你的渡河方案。探究一:讓學生完成智力游戲一分析現實問題蘊涵了這樣一個核心思想:給出所有可能的都考慮到的搜索規則,經過有限次的操作,一定能得到最終結果,這就是計算的思維方法。天下真的有“不要錢的午餐”嗎? 某一餐館門口海報上寫著“不要錢的午餐”, 規則如下:在三個月內,來賓必須湊夠五個人,五人每次來就餐必須按照不同的順序坐,直到把所有可能的順序都坐一遍,以后來吃飯就可永遠免費 。于是有人想,這太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友參加這項活動,可是,吃了十次之后,還沒有吃上免費午餐,這是怎么回事呢?探究二二認識算法二為什么學習算法智能時代,算法已經廣泛應用于各領域,許多專家通過分析行業的運行規律,界定問題,有針對性地建立模型,設計算法,并應用信息技術實現模型,從而創造出新產品,創生出新的產業,例:在網絡環境下實現“互聯網+單車”,催生出“共享單車”這個新產業,解決短距離出行不便問題。認識算法二算法概念算法是在有限步驟內求解某一問題所使用的一組定義明確的規則。通俗地說,算法是計算機求解某一問題的方法,是能被機械地執行的動作或指令的有窮集合。認識算法四認識算法一個算法一般要求有0個或多個輸入,來描述運算對象的初始情況。一個算法有一個或多個輸出,以反映對輸入數據加工后的結果。指算法必須能在執行有限個步驟之后終止,也就是算法步驟不能是無限的。算法中的每一步操作都是可以執行的,或者都可以分解成計算機可執行的基本操作。算法的每個步驟都具有確定的含義,讀者在理解時不會產生二義性。有窮性03可行性04有輸出02有輸入01確定性05算法的特征三描述算法三算法描述的三種方法自然語言通俗易懂,但缺乏直觀性和簡潔性,并且容易產生歧義流程圖偽代碼以Visual Basic、C++、 python 等語言實現, 是介于自然語言和計算機語言之間的文字。程序框 名稱 功能開始結束 算法的開始和結束輸入輸出 輸入和輸出信息處理 計算與賦值判斷 條件判斷流程線 算法中的流向三描述算法解決問題天下真的有“不要錢的午餐”嗎? 某一餐館門口海報上寫著“不要錢的午餐”, 規則如下:在三個月內,來賓必須湊夠五個人,五人每次來就餐必須在這張圓桌按照不同的順序坐,直到把所有可能的順序都坐一遍,以后來吃飯就可永遠免費 。于是有人想,這太容易了,于是他就叫上自己的朋友參加這項活動,可是,吃了十次之后,還沒有吃上免費午餐,這是怎么回事呢?四自然語言描述1天下真的有“不要錢的午餐”嗎?①第一個座位5個人都有坐的機會②第二個座位只有4個人中的任一個有坐的機會(一個人不能同時坐兩個座位)③第三個座位只有3個人中的任一個有坐的機會④第四個座位只有2個人中的任一個有坐的機會⑤第五個座位只有1個人有坐的機會⑥計算:5×4×3×2×1=120⑦得出結論:需要吃120次才有可能吃上免費午餐。描述算法四流程圖2天下真的有“不要錢的午餐”嗎?開始輸出結果 s條件i<=5處理 S=s*i結束定義變量 i , s,賦初值NYi=i+i四流程圖偽代碼2天下真的有“不要錢的午餐”嗎?開始輸出結果 s條件i<=5處理 S=s*i結束定義變量 i , s,賦初值NYi=i+iPrint (”需要吃多少次能免費:”, s, "次”)i=1s = 1While i<=5:s = s * ii = i+1三描述算法偽代碼3偽代碼3偽代碼的目的是使被描述的算法可以容易地以任何一種編程語言(python,C,Java等)實現。三描述算法算法描述方式 優勢 不足自然語言流程圖偽代碼算法描述方式的比較四深入探究 完成任務四深入探究 完成任務思考1:我國南北朝時的重要數學著作《孫子算經》有這樣一個問題:今有物不知其數:三三數之余二,五五數之余三,七七數之余二,問物幾何 四深入探究 完成任務分析問題(找出已知和未知、列出已各和未知的關系) 人工算術解題步驟有物不知其數 X 三三數之剩二 X÷3=y1余2 五五數之剩三 X÷5=y2余3 七七數之剩二 X÷7=y3余2 問物幾何? X解題步驟1:三人同行七十稀 2×70=140五樹梅花廿一支 3×21=63七子團圓正半月 2×15=30140+63+30=233解題步驟2:除百零五使得知 233÷105=2余23(3×5×7=105)結果:此物為23四深入探究 完成任務開始X被3、5、7、整除后余數為2、3、2X+1 X輸出X結束YN1 X四開始X被3、5、7、整除后余數為2、3、2X+1 X輸出X結束YN1 Xx=1While not(x % 3==2 and x% 5==3 and x % 7==2):print (“滿足條件的數是:” , x)%是求余運算符x=x+1四思考2:請同學們再思考:求整除3余1、整除5余2、整除7余4、整除13余6、整除17余8的最小自然數。分析問題(找出已知和未知、列出已各和未知的關系) 寫出解題步驟設所求的數為X, 則應滿足:X 整除3余1X 整除5余2X 整除7余4X 整除13余6X 整除17余8令 X 為1如果X整除3余1,X整除5余2, X整除7余4, X整除13余6, X整除17余8,則記下這個 X。令X 為 x+1如果算出,則結束;否則跳轉 。寫出答案。四深入探究 完成任務在“互聯網+”這個最好的時代,發展的步伐是無法阻擋的,我們所能做的是掌握一些有用的算法,用理性精神來面對現實,抓住智能時代的機遇,而不是回避它、否定它和阻止它。未來的社會,屬于那些具有創意的人,屬于那些理性的人,屬于那些懂得在生活中運用計算思維的人。THANK YOU!2.2算法的概念與描述練 習 題一、選擇題1、(單選)下列問題不能用算法描述的是( )A.找出所有能被3整除的自然數B.輸入身高體重,判斷體型情況C.找出1000個整數中的最大值與最小值D.將十進制數64轉換為對應的二進制數2.(單選)計算機能直接識別的算法表示形式是____。A.自然語言 B.流程圖C.計算機語言 D.偽代碼3.(單選)在算法描述幾種方法中容易產生二義性的是()A.自然語言 B.流程圖C.計算機語言 D.偽代碼4(多選)下列關于算法說法正確的是( )A.利用計算機解決問題的過程一般是:分析問題、計算算法、編寫代碼、運行程序B.算法可以用自然語言、流程圖或偽代碼描述C.算法的步驟必須是有限的D.算法就是計算的方法二、判斷1、程序算法中至少有一個輸入項。2.解決同樣一個問題,算法不管怎樣設計,寫出的程序運行出結果的時間效率都是一樣的。3.一個算法有0個或多個輸出。4.一個算法是對某個問題而設計的求解的有限步驟,可以用各種計算機程序設計語言寫成多種程序。5、程序設計中的算法其實就是能在計算機上解決問題的方法和步驟。答案:一、D C A ABC二、(錯)(錯)(錯) (對) (對) 展開更多...... 收起↑ 資源列表 2.2算法的概念與描述 練習.docx 2.2算法的概念及描述 教案.docx 2.2算法的概念及描述 課件.pptx 縮略圖、資源來源于二一教育資源庫