資源簡介 第六課《猜數(shù)字算法驗(yàn)證》教學(xué)設(shè)計(jì)一、學(xué)習(xí)內(nèi)容分析本課是浙江教育出版社信息技術(shù)小學(xué)六年級上冊第一單元《算法的實(shí)現(xiàn)》的第7課,也是本單元的最后一課。本單元主要是讓學(xué)生知道在計(jì)算機(jī)中實(shí)現(xiàn)算法的一般步驟:問題分析、抽象建模、設(shè)計(jì)算法、驗(yàn)證與優(yōu)化算法,理解算法與計(jì)算機(jī)程序之間的關(guān)系,并且能夠利用算法與計(jì)算機(jī)程序解決簡單問題。第6課《猜數(shù)字算法設(shè)計(jì)》與第7課《猜數(shù)字算法驗(yàn)證》可以開展微項(xiàng)目學(xué)習(xí)。本課內(nèi)容包括驗(yàn)證算法和完善算法兩部分。本課主要通過編寫Python程序驗(yàn)證“猜數(shù)字游戲”的算法設(shè)計(jì),了解輸入語句及雙分支條件語句的使用;通過運(yùn)行調(diào)試,不斷修改完善算法,進(jìn)而優(yōu)化算法。“完善算法”板塊以增加“記錄猜測次數(shù)”的功能為例。顯現(xiàn)了算法和程序完善的過程與結(jié)果。“試一試”欄目讓學(xué)生在增加“記錄猜測次數(shù)”功能后,再次試玩程序。感受完善前后鮮明的使用對比。“小知識”則介紹了“二分查找法”。幫助學(xué)生在更短的時間內(nèi)高效地找到正確答案,體會運(yùn)用不同的算法解決問題會得到不同的結(jié)果,也為第二單元“算法的效率”的學(xué)習(xí)打好體驗(yàn)上的基礎(chǔ)。為了讓猜數(shù)字算法變得更有趣,課后練習(xí)提出了限定猜數(shù)次數(shù)的完善要求。二、學(xué)情分析本課學(xué)習(xí)對象為六年級學(xué)生,在五年級時已經(jīng)學(xué)習(xí)過圖形化編程語言,有些學(xué)校也以猜數(shù)字為例開展過相關(guān)教學(xué)。通過前幾課的了解對python編程環(huán)境也有了一定了解,但是基礎(chǔ)很是薄弱,普遍對編程興趣較高,通過前面的學(xué)習(xí),已具備一定的基本能力,但是相對于圖形化編程,純代碼的算法設(shè)計(jì)還是有一定的難度。學(xué)習(xí)目標(biāo)教學(xué)目標(biāo) 核心素養(yǎng)指向1.通過運(yùn)行程序驗(yàn)證猜數(shù)字算法,掌握分析程序運(yùn)行過程與結(jié)果的方法。 2.根據(jù)對算法驗(yàn)證結(jié)果的分析,能初步完善算法。 【信息意識】 能夠根據(jù)需求完善猜數(shù)字游戲的算法和功能。 【計(jì)算思維】 在問題解決過程中,能根據(jù)程序運(yùn)行的結(jié)果判斷如何調(diào)整優(yōu)化算法。 【信息社會責(zé)任】 通過猜數(shù)字游戲的程序驗(yàn)證,認(rèn)識到算法對解決問題的重要性。四、教學(xué)重難點(diǎn)教學(xué)重點(diǎn):驗(yàn)證算法。教學(xué)難點(diǎn):完善算法。五、課前準(zhǔn)備學(xué)習(xí)環(huán)境:猜數(shù)字游戲的半成品程序。學(xué)習(xí)資源:待完善的算法流程圖。六、學(xué)習(xí)過程(一)舊知回顧 引入課題學(xué)習(xí)內(nèi)容與活動 設(shè)計(jì)意圖舊知回顧 想一想:有什么方法可以驗(yàn)證猜數(shù)字游戲的算法是否正確? 揭示課題: 了解使用計(jì)算機(jī)驗(yàn)證算法的一般過程與方法,揭示課題:猜數(shù)字算法驗(yàn)證。 本節(jié)課是延伸上節(jié)課的算法設(shè)計(jì)的內(nèi)容,且在第4課中已經(jīng)了解到通過編寫程序驗(yàn)證算法,通過舊知遷移,直接揭示課題。(二)小組合作 驗(yàn)證算法學(xué)習(xí)內(nèi)容與活動 設(shè)計(jì)意圖任務(wù)1:小組合作,學(xué)習(xí)新指令。 小組合作,通過學(xué)習(xí)小錦囊,填寫學(xué)習(xí)單中的第1和第2項(xiàng)。 提問:什么是整型數(shù)據(jù)?為什么要轉(zhuǎn)化為整型數(shù)據(jù)?進(jìn)一步理解int()語句。 繼續(xù)學(xué)習(xí)小知識,猜一猜什么語句可以實(shí)現(xiàn)判斷猜數(shù)字的大小?填寫學(xué)習(xí)單中的第4項(xiàng)。 出示if……else……語句的使用方法。 追問:算法中的兩個判斷條件的作用是否一樣? 提問:什么語句可以實(shí)現(xiàn)讓用戶在沒有猜對時反復(fù)輸入數(shù)字? 回顧遷移while語句的用法。 2.運(yùn)行程序、驗(yàn)證算法 (1)任務(wù)2:請運(yùn)行程序并跟蹤、記錄運(yùn)行過程結(jié)果,驗(yàn)證算法是否解決問題。 請學(xué)生展示介紹自己的運(yùn)行過程。 請學(xué)生梳理、對比分析運(yùn)行過程中存在的問題,思考解決方案。 調(diào)試運(yùn)行程序。 總結(jié)出驗(yàn)證算法的一般方法。 (1)回顧鞏固賦值語句,了解input()語句和int()語句的用法。 復(fù)習(xí)循環(huán)的判斷條件和正確解的條件,進(jìn)而引出循環(huán)判斷的語句。 教師給的程序中,故意將第二個輸入語句中的int去掉,讓學(xué)生通過找錯發(fā)現(xiàn)int語句的使用的必要性。 通過記錄運(yùn)行過程,將學(xué)生的思維過程可視化,同時也幫助學(xué)生查找問題。 學(xué)生在體驗(yàn)運(yùn)行調(diào)試后,梳理出通過程序驗(yàn)證算法的一般方法。(三)體驗(yàn)游戲、完善算法學(xué)習(xí)內(nèi)容與活動 設(shè)計(jì)意圖提出新功能,完善算法流程圖 思考:通過運(yùn)行調(diào)試后,你覺得還可以怎么完善該游戲的算法。 提問:若想增加“猜測次數(shù)”的功能,如何修改算法流程圖? 若學(xué)生說不出,教師引導(dǎo)可使用“ci”變量記錄猜數(shù)的次數(shù)。在流程圖中修改算法。 2.根據(jù)流程圖,完善算法程序 (1)任務(wù)3:請根據(jù)完善后的算法流程圖,修改完善程序代碼。 (2)如果學(xué)生修改程序有困難,教師出示完整程序。 3.玩一玩,對比方法 (1)調(diào)整目標(biāo)數(shù)“da”的數(shù)字,運(yùn)行程序,和同伴互玩一下,并填寫學(xué)習(xí)單。 調(diào)整目標(biāo)數(shù)為: 同伴猜了幾次才成功: 比一比誰猜的次數(shù)最少: 引出“二分查找法”思想 請學(xué)生使用“二分查找法”的思想再玩一玩,看看最多用幾次就能猜對。 讓學(xué)生提出修改算法的需求,并嘗試修改算法流程圖和程序,體驗(yàn)經(jīng)歷完善算法的過程。 通過互玩猜數(shù)字游戲,對比誰猜的次數(shù)少,引出“二分查找法”,再讓學(xué)生學(xué)以致用,體驗(yàn)“二分查找法”的優(yōu)勢,初步感知經(jīng)典算法的執(zhí)行效率。(四)課堂總結(jié)、拓展練習(xí)學(xué)習(xí)內(nèi)容與活動 設(shè)計(jì)意圖梳理收獲、課堂總結(jié) 請學(xué)生梳理回顧,說一說本節(jié)課的收獲。 (2)教師總結(jié)提煉本節(jié)課學(xué)習(xí)目標(biāo) 2.拓展練習(xí)、遷移應(yīng)用 (1)進(jìn)一步完善算法,修改程序,實(shí)現(xiàn)以下功能: 如果用戶的猜數(shù)次數(shù)超過7次,提示“挑戰(zhàn)失敗”! 學(xué)生梳理收獲很可能只記得具體的語句,教師再補(bǔ)充,回顧使用計(jì)算機(jī)驗(yàn)證算法的一般過程。 如果還有時間,可以讓學(xué)有余力的學(xué)生繼續(xù)挑戰(zhàn),遷移應(yīng)用。板書設(shè)計(jì):猜數(shù)字游戲驗(yàn)證編寫程序運(yùn)行調(diào)試完善算法(共12張PPT)舊知回顧想一想:有什么方法可以驗(yàn)證猜數(shù)字游戲的算法是否正確?使用計(jì)算機(jī)編程驗(yàn)證猜數(shù)字算法驗(yàn)證《信息科技》六年級上冊小組合作、驗(yàn)證算法da=55cai=任務(wù)1:小組合作,請將下列算法步驟轉(zhuǎn)化為計(jì)算機(jī)可執(zhí)行的指令,假如猜的數(shù)是55。填寫學(xué)習(xí)單中的1、2項(xiàng)。cai=int(input(“請輸入一個1至100之間的數(shù)字”))使用input(“”)實(shí)現(xiàn)數(shù)據(jù)的輸入,“ ”中間的內(nèi)容是提示語。再使用int()將其轉(zhuǎn)化為整型數(shù)據(jù)。思考:什么是整型數(shù)據(jù)?為什么要轉(zhuǎn)化為整型數(shù)據(jù)?小組合作、驗(yàn)證算法繼續(xù)學(xué)習(xí)小知識,猜一猜什么語句可以實(shí)現(xiàn)判斷猜數(shù)字的大小?if……else……if caiprint(“小了”)else:print(“大了”)思考:這兩個判斷條件的作用是否一樣?滿足正確解的條件判斷循環(huán)的條件判斷填寫學(xué)習(xí)單中的第4項(xiàng)雙分支結(jié)構(gòu)小組合作、驗(yàn)證算法什么語句可以實(shí)現(xiàn)讓用戶在沒有猜對時反復(fù)輸入數(shù)字?while語句。while cai !=da:while cai !=da:if caiprint(“小了”)else:print(“大了”)填寫學(xué)習(xí)單中的第3項(xiàng)循環(huán)結(jié)構(gòu)小組合作、驗(yàn)證算法任務(wù)2:運(yùn)行猜數(shù)字游戲程序并跟蹤、記錄運(yùn)行過程結(jié)果,填寫學(xué)習(xí)單。驗(yàn)證算法的一般方法:(1)通過編寫程序,讓算法轉(zhuǎn)化為計(jì)算機(jī)可以執(zhí)行的精準(zhǔn)命令。(2)運(yùn)行程序并跟蹤、記錄運(yùn)行過程結(jié)果,驗(yàn)證算法是否解決問題。體驗(yàn)游戲、完善算法通過運(yùn)行調(diào)試及游戲體驗(yàn)后,你覺得還可以怎么完善該游戲的算法。增加“猜測次數(shù)”增加“猜測時間”若想增加“猜測次數(shù)”的功能,如何修改算法流程圖?ci=ci+1ci=0輸出ci體驗(yàn)游戲、完善算法任務(wù)3:請根據(jù)完善后的算法流程圖,修改完善程序代碼。體驗(yàn)游戲、完善算法試一試、玩一玩:調(diào)整目標(biāo)數(shù)“da”的數(shù)字,運(yùn)行程序,和同伴互玩一下,并填寫學(xué)習(xí)單。(1)調(diào)整目標(biāo)數(shù)為:(2)同伴猜了幾次才成功:(3)比一比誰猜的次數(shù)最少:二分查找法使用“二分查找法”再來玩一玩!課堂總結(jié)1.使用計(jì)算機(jī)驗(yàn)證算法的一般過程。2.根據(jù)運(yùn)行調(diào)試結(jié)果,不斷完善算法。(1)通過編寫程序,將算法轉(zhuǎn)化為計(jì)算機(jī)可以執(zhí)行的指令;(2)通過運(yùn)行程序,跟蹤記錄運(yùn)行過程結(jié)果,驗(yàn)證算法是否解決問題。拓展練習(xí)進(jìn)一步完善算法,修改程序,實(shí)現(xiàn)以下功能:如果用戶的猜數(shù)次數(shù)超過7次,提示“挑戰(zhàn)失敗”!下課啦!請同學(xué)們關(guān)閉電腦,椅子歸位,排隊(duì)有秩序離開微機(jī)室。 展開更多...... 收起↑ 資源列表 1.第7課猜數(shù)字算法驗(yàn)證-教學(xué)設(shè)計(jì).docx 2.猜數(shù)字算法驗(yàn)證.pptx 縮略圖、資源來源于二一教育資源庫