




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
浙教版六年級信息科技上全冊教案
第一單元算法的實現(xiàn)
【單元整體構(gòu)想】
一、單元內(nèi)容簡介
算法的實現(xiàn)有多種方式,編寫計算機程序?qū)崿F(xiàn)算法是最常用的方式之一。本
單元主要對應(yīng)課標“身邊的算法”模塊中“算法的描述”和“算法的執(zhí)行”這兩
部分內(nèi)容,在五年級學(xué)生初步認識用算法解決問題的基礎(chǔ)上,聚焦使用計算機實
現(xiàn)算法解決問題,將形式化的描述方式轉(zhuǎn)變?yōu)橥ㄟ^計算機實現(xiàn)的程序。
通過本單元的學(xué)習(xí),學(xué)生將繼續(xù)熟悉利用算法求解簡單問題的基本方式,通
過若干個熟悉的實踐案例提升算法設(shè)計能力,認識算法與程序之間的關(guān)系。
二、單元設(shè)計的望遠鏡思維
五年級已經(jīng)安排了初步的算法學(xué)習(xí),包括利用算法三種控制結(jié)構(gòu)設(shè)計算法、
算法的多種描述方式、用算法解決問題的一般過程等。學(xué)生知道可以從多種途徑
對算法進行驗證,對程序有了一定體驗,但是缺乏系統(tǒng)的認知。本單元通過解決
“投票”“雞兔同籠”“猜數(shù)字”三個具體問題,聚焦實現(xiàn)算法的程序,幫助學(xué)生
理解算法與程序之間的關(guān)系,為本冊后續(xù)”算法的效率”單元的學(xué)習(xí)打下閱讀、
編寫程序的基礎(chǔ),為“算法的影響”單元的學(xué)習(xí)做好充足的程序體驗鋪墊。
在數(shù)學(xué)學(xué)科中,學(xué)生學(xué)習(xí)過運用簡易方程解決簡單的實際問題,掌握了用字
母表示數(shù)的方法,能夠在真實的情境中,探索運用基本的數(shù)量關(guān)系分析與解決問
題;通過科學(xué)學(xué)科的學(xué)習(xí),學(xué)生能夠利用分析、比較、概括等方法抓住簡單事物
的本質(zhì)特征,能夠使用或建構(gòu)模型解釋科學(xué)現(xiàn)象和過程。這些都為本單元的學(xué)習(xí)
做好了認知與能力的儲備。
三、單元設(shè)計的放大鏡思維
本單元繼續(xù)圍繞“算法”這條核心邏輯主線,在具體問題的解決過程中讓學(xué)
生理解“算法是一組明確定義且可執(zhí)行的操作,用于描述解決問題的方法及步驟”
“解決問題的一般步驟包括抽象、分解、建模和制訂解決方案”等大概念。
本單元一共7課,包括利用算法解決問題的步驟與方法,通過“總-分-總”
的方式進行編排。第1課以解決學(xué)生熟悉的投票問題為例,從整體上回顧在計算
機中運用算法解決問題的過程,以喚醒學(xué)生原有的認知。第2-5課以“雞兔同籠”
問題為例,呈現(xiàn)每一個步驟的具體方法及過程。第6-7課通過猜數(shù)字游戲,讓學(xué)
生綜合運用所學(xué)方法解決問題,以提升學(xué)生運用計算機求解問題的能力與意識。
各課在問題的選擇上各有側(cè)重,從學(xué)生生活中比較熟悉的問題,到數(shù)學(xué)學(xué)科中的
經(jīng)典問題,再到游戲問題,解決問題每個步驟的復(fù)雜程度及要求逐步上升,從簡
單模擬到運用一定的算法思想設(shè)計算法;從讀懂教師提供的程序,到體驗執(zhí)行程
序,再到嘗試編寫程序,意在讓學(xué)生進一步理解算法與程序之間的關(guān)系。
本單元各課內(nèi)容如下表所示:
課序課題主要內(nèi)容
第1課算法與問題解決在計算機中運用算法解決問題的一般步驟。
借助表格對“雞兔同籠”問題進行抽象,用算式
第2課抽象與建模
表達計算模型。
認識枚舉算法,利用枚舉法設(shè)計解決“雞兔同籠”
第3課算法設(shè)計
問題的算法。
第4課算法的程序體驗認識Python編程運行環(huán)境與基礎(chǔ)詩句。
第5課算法的執(zhí)行運行、調(diào)試程序。
對猜數(shù)字問題進行抽象建模,使用循環(huán)和分支結(jié)
第6課猜數(shù)字算法設(shè)計
構(gòu)設(shè)計算法。
第7課猜數(shù)字算法驗證編寫程序驗證算法,調(diào)試、完善算法與程序。
【單元目標設(shè)計】
素養(yǎng)目標
通過具體問題的解決,知道用計算機實現(xiàn)算法解決問題的一般過程,理解算法
與計算機程序的關(guān)系,掌握程序設(shè)計的基本知識與方法,提高、完善優(yōu)化算法
的意識。
邏輯主線單元主要涉及的大概念單元目標描述
1.通過解決簡單問題,體驗用算法
1.算法是一組明確定義且解決問題的一般過程,掌握抽象與建
可執(zhí)行的操作,用于描述解模、算法設(shè)計、驗證與優(yōu)化算法的方
決問題的方法及其步驟。法。
2.解決問題的一般步驟包2.通過程序驗證算法,理解算法與
算法
括抽象、分解、建模和制訂程序的關(guān)系,掌握閱讀、修改、編寫、
解決方案。運行計算機程序的方法。
3.算法可以用文字、圖示、3.通過調(diào)試程序,理解算法的執(zhí)行
代碼等方式進行描述。過程,能夠根據(jù)程序輸出結(jié)果有針對
性地完善算法。
【單元評價設(shè)計】
本單元的評價建議通過一個真實問題的解決,對用算法解決問題的全過程進
行評價,重點環(huán)節(jié)(如抽象與建模、設(shè)計算法、驗證與優(yōu)化算法等)的評價設(shè)計
要具象化,具有操作性的同時兼具指導(dǎo)性。
一、最終評價任務(wù)設(shè)計
聯(lián)系生活中猜數(shù)字游戲的經(jīng)驗,將其設(shè)計為人機交互程序。由計算機確定一
個0T00的目標數(shù)字,用戶輸入猜測數(shù)字,程序比較猜測數(shù)字與目標數(shù)字的大小
關(guān)系:如果用戶答錯了,就給出“大了”或“小了”的提示并讓用戶兩次猜測;
如果用戶答對了,就給出“對了”的提示并停止運行。
二、評價量規(guī)設(shè)計
評價內(nèi)容杰出勝任新手
得分
得分標準(3分)(2分)(1分)
能獨立對問題中
需要在學(xué)習(xí)架構(gòu)
對問題進的數(shù)據(jù)、關(guān)系、規(guī)對問題中的數(shù)據(jù)、
支持或者他人幫
行抽象,則等進行抽象,確關(guān)系、規(guī)則進行抽
助下對問題進行
確定變量定變量,并闡明理象,確定變量。
抽象,確定變量。
由。
能選擇合理的方
式建立解決問題需要在學(xué)習(xí)架構(gòu)
建立解決能利用圖示、表格
的計算模型,如圖支持或者他人幫
問題的計或算式建立解決
示、表格、算式等,助下建立計算模
算模型問題的計算模型。
并能清晰解釋該型。
計算模型。
確定算法的輸入確定算法的輸入
合理選擇需要在學(xué)習(xí)架構(gòu)
與輸出,靈活運用與輸出,運用順
控制結(jié)支持或者他人幫
順序、分支、循環(huán)序、分支、循環(huán)算
構(gòu),設(shè)計助下完成算法的
算法控制結(jié)構(gòu)獨法控制結(jié)構(gòu)設(shè)計
算法設(shè)計。
立設(shè)計算法。算法。
能根據(jù)需求選擇
使用手繪或者數(shù)
流程圖符號、流程流程圖符號、流程
使用流程字化方式繪制流
線使用基本規(guī)范,線使用存在明顯
圖描述算程圖,流程圖符
每個步驟的描述錯誤,步驟描述不
法號、流程線使用規(guī)
均正確。清晰或存在錯誤。
范,每一個步驟描
述清晰準確。
能夠修改代碼或
修改程序者自主編寫程序,能夠閱讀程序,修
并運行程能夠調(diào)試程序,并改部分參數(shù)或代能夠閱讀程序,并
序驗證算根據(jù)調(diào)試結(jié)果優(yōu)碼,能夠運行并調(diào)運行程序。
法化迭代算法與程試程序。
序。
【單元過程設(shè)計】
一、單元問題設(shè)計
問題一:投票、猜數(shù)字等問題的算法可以用計算機來實現(xiàn),那么所有算法都
能用計算機實現(xiàn)嗎?
設(shè)計意圖:本題意圖讓學(xué)生聯(lián)系現(xiàn)實生活,引發(fā)學(xué)生的思考,探討哪些算法
可以由計算機來實現(xiàn),在舉例中感受用計算機實現(xiàn)算法的優(yōu)勢。
學(xué)生回答的引導(dǎo)方向:首先明確這里的算法指的是用計算機解決問題時的方
法及步驟,因此理論上所有的算法都可以由計算機實現(xiàn)。但在實際應(yīng)用中,有些
算法由于計算復(fù)雜度太高,無法在一定時間內(nèi)完成,因此暫時無法用計算機實現(xiàn)。
問題二:日常使用的計算機程序是怎么編寫出來的?
設(shè)計意圖:學(xué)生在日常生活中使用計算機與各種移動終端,已經(jīng)有了豐富的
程序使用經(jīng)驗,但對于程序是怎么編寫出來的相對缺乏認知。本題意在讓學(xué)生提
出合理的假設(shè),并通過本單元的學(xué)習(xí)認識程序,了解程序的編寫過程,能通過程
序來執(zhí)行并驗證算法。
學(xué)生回答的引導(dǎo)方向:日常使用的計算機程序通常是由開發(fā)人員使用計算機
語言按照一定的規(guī)則編寫的,要經(jīng)歷“需求分析-設(shè)計算法-編寫代碼-程序測試-
程序維護”一系列工作流程。
二、單元學(xué)習(xí)策略
本單元的學(xué)習(xí)要融入具體問題的解決過程。教材中通過作品投票、雞兔同籠、
猜數(shù)字三個問題,讓學(xué)生在反復(fù)經(jīng)歷抽象建模、設(shè)計算法、驗證算法、優(yōu)化算法
的過程中提高用算法解決問題的能力。在實際教學(xué)中,教師可以根據(jù)學(xué)生與學(xué)校
的實際情況對問題做適當(dāng)調(diào)整,但要避免問題或項目之間的簡單重復(fù),實現(xiàn)學(xué)生
在能力和思維方面的螺旋上升。
在開展具體的教學(xué)時,建議采用項目化教學(xué),教師要為學(xué)生提供豐富的學(xué)習(xí)
架構(gòu),滿足不同學(xué)生在不同階段的學(xué)習(xí)需求,同時做項目進度管理與評價,保障
整個項目有有序推進。與程序設(shè)計相關(guān)的課要做好分層教學(xué),設(shè)計不同難度的活
動供學(xué)生自主選擇,如讀懂程序、給程序填空、修改程序、獨立編寫程序等,讓
每一個學(xué)生都體驗用計算機實現(xiàn)算法的優(yōu)勢,獲得學(xué)習(xí)的成就感。
課題第1課算法與問題解決
1.通過解決投票問題,體驗在計算機中運用算法解決問題的一
教學(xué)目標般步驟。
2.通過程序?qū)崿F(xiàn)算法,感受計算機解決問題的優(yōu)勢。
教學(xué)重點體驗在計算機中運用算法解決問題的一般步驟。
教學(xué)難點設(shè)計解決問題的算法。
1.網(wǎng)絡(luò)教室。
2.Python3.8。
環(huán)境與素材
3.投票問題相關(guān)的圖文、影音素材。
4.使用多種計算機語言編寫的范例程序。
教學(xué)過程
一、討論
生活中的投票問題可以通過哪些途徑解決?各有什么優(yōu)點?
二、建構(gòu)
利用算法來解決問題有多種途徑,如由人工實施或由計算機實現(xiàn)等,不同
的途徑適用于不同的場景。在計算機中運用算法解決問題,主要經(jīng)歷問題分析、
抽象與建模、設(shè)計算法、驗證與優(yōu)化算法等過程。
1.抽象與建模
解決問題首先要對問題進行分析,抽象出關(guān)鍵要素,建立模型。以投票問
題為例,某校正在進行?;赵O(shè)計征選,全校1000名學(xué)生通過投票的方式在兩
個候選作品中選擇一個自己喜歡的設(shè)計方案。
解決該問題的關(guān)鍵要素包括兩個候選作品的編號、1000名學(xué)生的投票情
況。
(1)確定變量
本問題中,需要對每一次的投票內(nèi)容進行處理,從而決定增加哪個作品的
得票數(shù)。使用計算機解決這個問題時,可以用變量tp表示每一次的投票,不
同的變量值代表給不同的候選作品投票,用a、b兩個變量表示兩個候選作品
的得票數(shù)。
(2)抽象規(guī)則
tp的值決定了a+1還是b+1,如當(dāng)tp為“a”時,表示投票給A作品,則
a=a+l;當(dāng)tp為"b"時,表示投票給B作品,則b=b+l。
a=a+l,表示先將變量a的值加上1,再將結(jié)果存儲回變量a中,一般用
來表示遞增。
(3)建立模型
在抽象的基礎(chǔ)上,總結(jié)規(guī)律、建立模型是設(shè)計算法的前提。建立模型時可
以借助分工、表格、圖示等方式,下圖以圖示的形式對上述投票問題進行建模。
2.設(shè)計算法
設(shè)計算法時,要確定算法的輸入與輸出,并合理地選擇控制結(jié)構(gòu),準確、
有序地描述解決問題的步驟。例如,使用計算機解決上述作品投票問題的算法,
可以描述為如下幾個步驟:
步驟1:A、B作品得票數(shù)清零,即將變量a與b的值初始化賦為0;
步驟2:投票者輸入投票內(nèi)容“a"或”b",并將其賦值給變量tp;
步驟3:使用分支結(jié)構(gòu)對投票內(nèi)容進行判斷,當(dāng)tp為“a”時,變量a的
數(shù)值加1,當(dāng)tp為"b“時,變量b的數(shù)值加1;
步驟4:使用循環(huán)結(jié)構(gòu)重復(fù)步驟2、3,直到1000名學(xué)生都完成投票;
步驟5:輸出A、B作品的得票數(shù)。
算法的流程圖如下:
3.驗證算法
在計算機中,可以通過編寫并運行程序來驗證算法。
使用媼為管挺備,市
【想一想】
如果用戶輸入的數(shù)據(jù)既不是a,也不是b,結(jié)果會怎樣?
an
三、練習(xí)
如果有3個作品參與投票,算法需怎么調(diào)整?在流程圖中做相應(yīng)的修改。
參考答案:
課后反思/評價標準
課題第2課抽象與建模
1.通過對“雞兔同籠”問題進行抽象,掌握使用表格提煉關(guān)鍵
要素的方法。
教學(xué)目標
2.通過對“雞兔同籠”問題進行建模,掌握使用算式建立計算
模蛋的方法。
教學(xué)邕點抽象建模的方法。___________________________________________
教學(xué)難點利用表格對問題進行抽象。
1.網(wǎng)絡(luò)教室。
環(huán)境與素材
2.”雞兔同籠”問題相關(guān)素材。
教學(xué)過程
一、探索
下面這個問題中的關(guān)鍵要素有哪些?它們之間的關(guān)系是怎樣的?
今有雞、兔同籠,上有三十五頭,下有九十四足,問雞、兔各元市
二、建構(gòu)
抽象與建??梢宰プ栴}的核心,忽略與問題求解無關(guān)的要素。用一定的
方式表示關(guān)鍵要素之間的關(guān)系,有助于問題的解決。
1.問題描述
解決問題之前,要對問題進行清晰的描述,包括已知條件、未知條件與求
解目標。以《孫子算經(jīng)》中的“雞兔同籠”問題為例,用現(xiàn)代漢語可以描述如
下:在一個籠子里有若干只雞、兔,雞、兔一共有35個頭、94只腳,求籠中
有多少只雞、兔?
2.抽象
當(dāng)問題中各對象之間的關(guān)系較為復(fù)雜時,可以使用表格對問題進行抽象。
如“雞兔同籠”問題中,與問題求解相關(guān)的對象有雞與兔,涉及的數(shù)量有雞、
兔的只數(shù),雞、兔的頭數(shù)與腳數(shù),將這些問題要素通過表格進行整理,可以梳
理它們之間的關(guān)系,從而提煉關(guān)鍵要素。
數(shù)量
對象關(guān)系
頭數(shù)腳數(shù)
雞只數(shù)=雞頭數(shù)
雞未知未知
兔只數(shù)=兔頭數(shù)
雞只數(shù)X2=雞腳數(shù)
兔未知未知
兔只數(shù)X4=兔腳數(shù)
雞頭數(shù)+兔頭數(shù)=35
雞兔整體3594
雞腳數(shù)+兔腳數(shù)=94
根據(jù)上表可以發(fā)現(xiàn),雞與兔的頭數(shù)、腳數(shù)都可以由雞與兔的只數(shù)推導(dǎo)出,
雞與兔的只數(shù)是該問題的關(guān)鍵要素,可以用變量表示(如ji與tu),則該問
題所有的數(shù)量關(guān)系都可以用含有這兩個變量的算式進行比較。
3,建模
根據(jù)抽象出來的數(shù)據(jù)及其關(guān)系,可以建立計算模型,進而推導(dǎo)出答案,解
決問題。例如,“雞兔同籠”問題的計算模型可以用如下算式進行表達:
ji+tu=35
0wjiw35,0wtuw35
jix2+tux4=94
【試一試】
為了讓模型能適用于更多的同類問題,請用變量表示雞兔的總頭數(shù)與總腳
數(shù),并修改計算模型。
三、練習(xí)
我國古代數(shù)學(xué)家張丘建在《算經(jīng)》一書中提出了著名的“百錢買百雞”問
題:雞翁一,值錢五;雞母一,值錢三;雞雛三,值錢一;百錢買百雞,問翁、
母、雛各幾何?
請利用表格,從對象、數(shù)量、關(guān)系等角度對這個問題進行抽象建模。
參考答案:
數(shù)量
對象關(guān)系
只數(shù)價格
雞翁未知5
雞母未知3雞翁X5+雞母X3+雞雛X1/3=100
雞雛未知1/3
用變量a代表雞翁的數(shù)量,用變量b代表雞母的數(shù)量,則雞雛的數(shù)量為
100-a-b,利用算式建立的計算模型如下:
aX5+bX3+(100-a-b)Xl/3=100(OWaWlOO,OWbWIOO)
課后反思/評價標準
課題第3課算法設(shè)計
1.通過生活中具體案例的分析,理解枚舉算法思想。
教學(xué)目標2.通過設(shè)計“雞兔同籠”問題的算法,掌握枚舉法解決問題的
一般方法,初步樹立運用經(jīng)典算法思想解決問題的意識。
教學(xué)重點掌握枚舉法解決問題的一般方法o
教學(xué)難點理解枚舉算法思想。
1.破譯字母算式或24點游戲等枚舉法相關(guān)活動的素材。
環(huán)境與素材
2.流程圖繪制軟件或平臺。
教學(xué)過程
一、探索
解決下列問題時,主要的方法與步驟是怎樣的?
二、建構(gòu)
經(jīng)過大量的實踐,人們發(fā)現(xiàn)了一些共性的規(guī)律,將其總結(jié)成了經(jīng)典的算法,
如解析法、枚舉法等。合理地選擇經(jīng)典算法,可以為具體問題的解決設(shè)計出更
加精妙的方法,如''雞兔同籠”問題要在一定范圍內(nèi)尋找正確解,可以使用枚
舉法。
1.認識枚舉法
枚舉法的思想是有序地嘗試每一種可能的解,如果滿足正確解的條件就采
納,否則繼續(xù)枚舉,做到不遺漏、不重復(fù)。它在生活中有著廣泛的應(yīng)用,如玩
24點游戲時在頭腦中羅列各種可能的算式順一篇文章中摘錄好詞好句……
使用枚舉法的關(guān)鍵是確定枚舉的范圍和正確解的判斷條件。
姑耙>>
【想一想】
為什么在登錄網(wǎng)站、APP、ATM自動柜員機時,系統(tǒng)要限制用戶輸入密碼
的次數(shù)?
2.算法框架的確定
在明確算法思想的基礎(chǔ)上,使用具體的計算模型,合理選擇控制結(jié)構(gòu),可
以得到解決具體問題的算法框架。在枚舉“雞兔同籠”問題的解時,使用循環(huán)
結(jié)構(gòu)在0-35之間的枚舉ji或tu,使用分支結(jié)構(gòu)判斷是否滿足正確條件:ji
X2+tuX4=94?為了方便計算,可以只枚舉其中一種動物的只數(shù),另一種動物
的只數(shù)為35減去該動物的只數(shù)。
兔的只數(shù)35...12.......0
雞的只數(shù)35-35.......35-12.......35-0
總腳數(shù)140.......94.......70
是否滿足正確解條件XXV.......X
3.算法的描述
描述算法時,要精準描述算法的每一步驟,明確算法的輸入、輸出。對于
大部分算法來說,輸入數(shù)據(jù)是必要的,但有的算法不需要輸入數(shù)據(jù)或者算法本
身給定了初始條件,如''雞兔同籠”問題中將tu的值初始化賦為0?!半u兔同
籠”問題輸出的結(jié)果是雞與兔的只數(shù),即變量ji和tu的值。最后根據(jù)設(shè)計好
的算法框架,用流程圖將算法完整地描述出來?!半u兔同籠”問題的算法可描
述如下:
解火觥同才閂而竹“淡顯其圖
【試一試】
除了枚舉兔的數(shù)量,還可以枚舉哪些數(shù)量?
三、練習(xí)
利用枚舉法設(shè)計“百錢買百雞”問題的算法,并用流程圖描述。
參考答案:
課后反思/評價標準
第4課算法的程序體驗
1.認識計算機語言,理解算法可以通過計算機語言來實現(xiàn)。
2」通過體驗“雞兔同籠”程序,認識Python語宣的基礎(chǔ)語句二
認識Python語言的基礎(chǔ)語句。
理解算法可以通過計算機語言來實現(xiàn)。
1.網(wǎng)絡(luò)教室。
2.Python3.8。
3.相關(guān)學(xué)習(xí)微課。
4.使用不同計算機語言編寫的實現(xiàn)同一個算法的若干程序。
課題第5課算法的執(zhí)行
1.通過運行“雞兔同籠”程序,掌握算法執(zhí)行的方法。
教學(xué)目標2.通過調(diào)試“雞兔同籠”程序,掌握程序調(diào)試的方法,初步具
備完善算法與程序的意識。
教學(xué)重點掌握運行、調(diào)試程序的方法。
教學(xué)難點初步具備完善算法與程序的意識。
1.“雞兔同籠”解題程序。
環(huán)境與素材
2.相關(guān)學(xué)習(xí)微課。
教學(xué)過程
一、探索
使用計算機程序來解決身邊的問題,觀察并記錄程序運行的過程與結(jié)果。
二、建構(gòu)
計算機通過運行程序,完成算法的執(zhí)行,根據(jù)既定步驟完成高速、準確的
自動化處理。
1.運行程序
運行編寫好的程序,可以得到計算機輸出的可觀察的算法執(zhí)行結(jié)果。
在Python中,可以通過IDLEShell運行程序。在“File”菜單中選擇
“Open”,打開相應(yīng)的程序。在程序編輯器中的“Run”菜單中選擇“RunModule”,
即可運行程序。
.0—I-<文忤伯府
i—a
枚心運行經(jīng)R
【小知識】
條件循環(huán)語句:在Python中,第一行以while開始,然后是循環(huán)的判斷
條件,while循環(huán)頭部始終以冒號結(jié)束。頭部之后的縮進部分是循環(huán)體。當(dāng)滿
足判斷條件時重復(fù)執(zhí)行循環(huán)體內(nèi)容,否則停止循環(huán)。
2.調(diào)試程序
編寫程序?qū)崿F(xiàn)算法時,可能會因為錄入錯誤、語法錯誤、邏輯錯誤等導(dǎo)致
程序不能正常運行或者結(jié)果出錯。對程序進行反復(fù)調(diào)試,可以及時發(fā)現(xiàn)這些錯
誤。
l*yibnn裙官尸格區(qū)分
大4*>-m-4ttfuw
代AM個變量
發(fā)有的林點都
發(fā)&英文華角狀忠
下崎人,
Python將言使用城
社軸""區(qū)分代碼之
tl?。:‘r,*****刈的.累次、
.?34
,*XUMcnvX|
M*ar?a|irMMM*I?M*?*l>WHaort4H2<
L?0
【試一試】
修改代碼中雞、兔的總頭數(shù)與腳數(shù),觀察、記錄程序運行的過程與結(jié)果。
3.完善算法與程序
根據(jù)調(diào)試中發(fā)現(xiàn)的問題,有針對性地完善算法與程序。修正代碼在錄入、
語法和邏輯上的錯誤,使其能夠正常運行;完善算法,使其能更好地解決問題。
如在測試“雞兔同籠”解題程序時發(fā)現(xiàn),調(diào)整雞、兔的總頭數(shù)與總腳數(shù)后,程
序可能不輸出任何結(jié)果,這不符合算法必須有輸出的特點。為了讓用戶明確得
知題目是否有解,可以做如下調(diào)整:用一個變量記錄此題是否有解,如使用變
量jie,當(dāng)jie=l時表示有解,當(dāng)Jie=0時表示無解,若無解需在算法結(jié)果前
輸出無解提示。
宅’后的毋淳覽《田之¥.心內(nèi)41不
好的算法往往可以解決同一類問題,而不局限于某一個特定的問題。
【試一試】
當(dāng)“雞兔同籠”問題中的總頭數(shù)與總腳數(shù)發(fā)生變化時,需要用戶在代碼中
手動調(diào)整。和同伴討論提出更完善的算法設(shè)想,便于用戶操作。
三、練習(xí)
運行完善后的“雞兔同籠”程序,經(jīng)過反復(fù)調(diào)試,解決發(fā)現(xiàn)的問題,并提
出完善算法的新創(chuàng)想。
發(fā)現(xiàn)的問題解決問題的創(chuàng)想
課后反思/評價標準
課題第6課猜數(shù)字算法設(shè)計
1.通過對猜數(shù)字問題進行抽象與建模,掌握利用表格進行建模
教學(xué)目標的方法。
2.通過設(shè)計猜數(shù)字算法,熟練掌握算法設(shè)計與描述的方法。
教學(xué)重點設(shè)計猜數(shù)字算法。
教學(xué)難點靈活利用循環(huán)和分支結(jié)構(gòu)設(shè)計算法。
1.猜數(shù)字游戲的相關(guān)素材。
環(huán)境與素材
2.繪制流程圖的數(shù)字化軟件與平臺。
教學(xué)過程
一、討論
你玩過猜數(shù)字游戲嗎?和同伴討論一下游戲規(guī)則,并玩一玩。
二、建構(gòu)
通過數(shù)據(jù)輸入和輸出可以實現(xiàn)計算機與外界的信息交流,實現(xiàn)“人機對
話”。
1.抽象與建模
人機交互程序主要實現(xiàn)用戶與計算機交互的功能,主要流程包括用戶輸入
數(shù)據(jù)、計算機處理數(shù)據(jù)、計算機輸出數(shù)據(jù)。
生活中的很多交互行為都可以設(shè)計成人機交互程序。比如,可以將猜數(shù)字
游戲做成人機交互程序,讓用戶猜數(shù),計算機出題并根據(jù)用戶猜數(shù)結(jié)果實現(xiàn)游
戲反饋自動化。對這個問題進行抽象建模時,可以參考人機交互的主要流程。
(1)輸入數(shù)據(jù)
用戶反復(fù)輸入數(shù)字進行猜測,直到答對為止。由于數(shù)字一直在變化中,可
以用一個變量來表示,如cai。
(2)處理數(shù)據(jù)
計算機主要是對用戶輸入的數(shù)字和目標數(shù)的大小進行比較判斷。為了讓程
序更具有普遍性,可以用一個變量來表示目標數(shù),如da。cai和da之間存在
“大于”“小于”“等于"三種關(guān)系。
(3)輸出數(shù)據(jù)
根據(jù)cai和da的大小關(guān)系,輸出三種提示。
根據(jù)以上抽象內(nèi)容,可以利用表格建立模型如下:
輸入數(shù)據(jù)比較輸出
輸入caicai>da輸出“大了,繼續(xù)”
輸入caicai<da輸出“小了,繼續(xù)”
輸入caicai=da輸出“對了,停止”
2.算法的設(shè)計
明確輸入、輸出之后,需要合理選擇控制結(jié)構(gòu)控制交互過程。例如,使用
條件循環(huán)實現(xiàn):當(dāng)caiWda時,讓用戶反復(fù)作答;在循環(huán)結(jié)構(gòu)中嵌套分支結(jié)構(gòu),
判斷cai與da的大小,計算機根據(jù)不同的大小關(guān)系輸出相應(yīng)的提示。
設(shè)計猜數(shù)字游戲的算法流程圖如下:
(_')
____________f_____________
山?ITW之同構(gòu)集個孔隼狀字
&?用戶幡7s,多/
/輸出臭示“對停止"出質(zhì)示“小了.姬續(xù)出發(fā)示”大了.雉續(xù)一
(百)
樹軌¥*戲妁
三、練習(xí)
修改猜數(shù)字游戲的規(guī)則,并調(diào)整算法流程圖。
課后反思/評價標準
課題第7課猜數(shù)字算法驗證
1.通過運行程序驗證猜數(shù)字算法,掌握分析程序運行過程與結(jié)
教學(xué)目標果的方法。
2.根據(jù)對算法驗證結(jié)果的分析,能初步完善算法。
教學(xué)邕點驗證算法。
教學(xué)難點完善算法。
1.猜數(shù)字游戲的半成品程序。
環(huán)境與素材
2.待完善的算法流程圖。
教學(xué)過程
一、探索
編寫“猜數(shù)字”交互程序時,可能用到哪些語句?為什么?
使用while循環(huán)語句可以讓用戶在沒有猜對時反復(fù)輸入數(shù)字。
判斷用戶的數(shù)字大小時,要用到什么語句呢?
二、建構(gòu)
通過編寫、運行程序,可以對算法進行驗證,并根據(jù)驗證結(jié)果不斷優(yōu)化算
法。
1.驗證算法
使用計算機驗證算法,首先選擇合適的程序設(shè)計語言編寫程序,即將算法
轉(zhuǎn)化為計算機可以執(zhí)行的精準命令;然后運行程序并跟蹤、記錄運行過程結(jié)果,
驗證算法是否解決問題。
后面為注釋語句,程序運行時不會被執(zhí)行。在編寫程序時添加注釋
是個好習(xí)慣。
a序1?出
【小知識】
輸入:在Python中,使用input("")實現(xiàn)數(shù)據(jù)的輸入,””中間的內(nèi)
容是提示語。用戶輸入的內(nèi)容默認為字符串類型,若對其進行數(shù)值運算,則須
進行數(shù)據(jù)類型的轉(zhuǎn)換,如使用int()將其轉(zhuǎn)化為整型數(shù)據(jù),例如
cai=int(input("猜一個1至100之間的數(shù)字”))。
雙分支條件語句:在Python中,用“if…else…"來構(gòu)造雙分支條件語
句,當(dāng)滿足判斷條件時執(zhí)行if分支下的代碼,否則執(zhí)行else分支下的代碼。
麗電瓶廠Icaidak一無新條件
print.i'j**)
_LDB1ItI\9Jr
平酒足判V--.......................-1
斷條件對
【試一試】
調(diào)整“目標數(shù)”,運行程序,和同伴一起玩一玩。
2.完善算法
通過分析程序結(jié)果與任務(wù)需求是否一致,以及調(diào)試過程中發(fā)現(xiàn)的問題,提
出完善算法的方案。例如,為了增加猜數(shù)字程序的實用性與趣味性,可以在程
序中增加記錄猜測次數(shù)的功能:用變量ci表示次數(shù),用戶每猜一次,ci就加
1,用戶答對后輸出一共猜了多少次的提示。
會上itAHWl
①*后的程序代馬
【試一試】
運行程序,和同伴比一比,誰用了最少的次數(shù)猜出目標數(shù)。
【小知識】
使用“二分查找法”可以用較少的次數(shù)猜出正確的答案。如在猜數(shù)字游戲
中,可以先猜1T00中間的數(shù)50,那么根據(jù)出題者的大小提示,就可以排隊
一半的數(shù)!再在剩下的范圍內(nèi)繼續(xù)猜中間值,重復(fù)這個過程,不超過7次就能
猜出這個數(shù)字了。
三、練習(xí)
繼續(xù)修改完善后的猜數(shù)字算法,實現(xiàn)以下功能:如果用戶的猜數(shù)次數(shù)超過
7次,提示“挑戰(zhàn)失敗”。
課后反思/評價標準
第二單元算法的效率
【單元整體構(gòu)想】
一、單元內(nèi)容簡介
求解同一個問題,可能會有多種算法,但是解決同一個問題的多種算法,效
率可能是不一樣的。不同的算法在考慮問題求解正確的基礎(chǔ)上,還需要分析問題
求解的效率。本單元安排了“算法的效率”內(nèi)容,在算法的描述、算法的執(zhí)行等
內(nèi)容的基礎(chǔ)上,采用多種算法來解決同一個問題,體現(xiàn)算法執(zhí)行的不同效率。
本單元通過多種算法的執(zhí)行及評估,讓學(xué)生意識到評價算法的標準除了正確
性和有效性以外,執(zhí)行效率也是一個需要關(guān)注的因素,幫助學(xué)生初步養(yǎng)成運用算
法的思維習(xí)慣,形成設(shè)計與分析簡單算法的能力。
二、單元設(shè)計的望遠鏡思維
經(jīng)過五年級的學(xué)習(xí),學(xué)生已經(jīng)能根據(jù)簡單問題的描述,進行抽象建模,采用
恰當(dāng)?shù)姆绞矫枋鏊惴?,初步具備了信息處理的能力。?jīng)過六年級上第一單元的學(xué)
習(xí),學(xué)生已經(jīng)知道在計算機中實現(xiàn)算法的一般步驟,通過問題健找、抽象與建模、
設(shè)計算法、驗證與優(yōu)化算法等過程,已經(jīng)對算法與程序的關(guān)系有了具體的體驗。
在此基礎(chǔ)上,本單元將“算法的描述”“算法的執(zhí)行”和“算法的效率”三個部
分有機貫穿于各個算法問題的討論,通過觀察并體驗采用不同算法解決同一個問
題在時間效率上的差別。止匕外,本單元與此后要學(xué)習(xí)的第三單元”算法的影響”
相關(guān)聯(lián)。通過分析信息社會中各種與算法有關(guān)的應(yīng)用,讓學(xué)生感受到人們對這些
應(yīng)用有一個共同要求,即在用戶可以接受的時間內(nèi)給出正確的結(jié)果。好的算法能
在給定的資源條件下(例如存儲空間、網(wǎng)絡(luò)帶寬等),助力達成目標,或者在達
成目標的前提下少用其他資源,因而具有價值。
三、單元設(shè)計的放大鏡思維
本單元的知識內(nèi)容在設(shè)計上繼續(xù)圍繞“算法”這條核心邏輯主線,融合“數(shù)
據(jù)”“信息處理”等多條邏輯主線螺旋上升。本單元圍繞“同一個問題可以采用
多種算法來解決,而不同的算法可能具有不同的效率”和“解決問題的一般步驟
包括抽象、分解、建模和制訂解決方案”等大概念,共設(shè)計5節(jié)課,安排了猜數(shù)
字和“韓信點兵”等游戲,對同一個問題設(shè)計多種不同算法,如猜數(shù)字可分別采
用順序查找和二分法查找算法解決,“韓信點兵”可分別采用枚舉、篩選、同余
算法解決,并針對不同算法,討論算法評價的方法。通過本單元的學(xué)習(xí),能幫助
學(xué)生學(xué)會比較不同算法的效率,體驗算法效率的差別,樹立算法效率的意識。
本單元各課內(nèi)容如下表所示:
課序課題簡介
分析猜數(shù)字游戲問題、設(shè)計解決問題的
第8課算法的多樣性
多種算法、驗證解決問題的多種算法。
第9課算法的評價方法學(xué)習(xí)算法評價的方法、體驗算法評價。
“韓信點兵”枚舉法的實抽象與建模、枚舉算法設(shè)計、篩選算法
第10課
現(xiàn)的程序?qū)崿F(xiàn)。
“韓信點兵”篩選法的實抽象與建模、篩選算法設(shè)計、篩選算法
第11課
現(xiàn)的程序?qū)崿F(xiàn)。
“韓信點兵”同余法的實抽象與建模、同余法設(shè)計、同余法的程
第12課
現(xiàn)序?qū)崿F(xiàn)。
【單元目標設(shè)計】
素養(yǎng)目標
在典型的信息科技應(yīng)用場景中,嘗試采用不同方法解決同一個問題,熟悉一些
常用經(jīng)典算法的程序?qū)崿F(xiàn)和執(zhí)行過程;能針對不同的輸入數(shù)據(jù)的規(guī)模,分析解
決問題的不同算法在時間效率上的高低。
邏輯主線單元主要涉及的大概念單元目標描述
1.通過分析生活中的具體問題解決實
1.同一個問題可以采用例,認識到解決同一個問題可能存在多
多種算法來解決,而不種算法。
同的算法可能具有不同2.通過同一個問題的多種算法驗證,認
算法的效率。識到不同的算法存在運行效率上的差
2.解決問題的一般步驟異。
包括抽象、分解、建模3.通過估算算法的時間復(fù)雜度,理解影
和制訂解決方案。響算法運行時間的因素,能根據(jù)簡單問
題求解的需要設(shè)計合適的算法。
【單元評價設(shè)計】
本單元的評價可以基于真實的生活問題創(chuàng)設(shè)情境,圍繞“能采用多種算法解
決問題,并對多種算法進行效率分析”展開。
一、最終評價任務(wù)設(shè)計
在進行大掃除時,要把甲、乙兩個班的學(xué)生分成若干個人數(shù)相同的小組,并
且使每個小組都是同一個班的學(xué)生。每個小組最多有幾名學(xué)生?
實踐:請用多種算法來解決問題。
二、評價量規(guī)設(shè)計
可根據(jù)學(xué)生的回答情況進行評價,如算法描述、算法實現(xiàn)、算法多樣性等方
面°
評價內(nèi)容評分指標(5分)得分
具備按照抽象建模、設(shè)計算法、驗證算法的步驟
利用算法解決問題
解決問題的意識。
解決該問題可采用多種算法,如枚舉、輾轉(zhuǎn)相除
算法的多樣性
法、更相減損術(shù)等。
算法的實現(xiàn)能利用流程圖或程序?qū)崿F(xiàn)算法。
具備算法效率意識,能根據(jù)問題解決需要選擇合
算法的效率
適的算法解決問題
【單元過程設(shè)計】
一、單元問題設(shè)計
問題一:猜數(shù)字游戲,你能用多種算法來解決嗎?
設(shè)計意圖:猜數(shù)字游戲是前面幾節(jié)課探究過的問題,學(xué)生已經(jīng)熟知該情境。
通過類似的驅(qū)動性問題,一方面引發(fā)學(xué)生回顧前面學(xué)習(xí)過的內(nèi)容,歸納問題解決
的思維與方法;另一方面激發(fā)學(xué)生思考解決該問題的其他算法,引導(dǎo)學(xué)生感知解
決同一個問題可能有多種算法。
學(xué)生回答的引導(dǎo)方向:學(xué)生可回顧前幾節(jié)課中解決猜數(shù)字問題的思想與方法,
就是模擬了整個猜數(shù)字游戲的過程,所猜數(shù)字可隨機輸入。因此,就所猜數(shù)字輸
入的先后次序可引入一定的規(guī)則,如依次輸入、取中間數(shù)輸入等。
問題二:你覺得怎樣的算法才是“好”的算法?
設(shè)計意圖:對算法“好”和“差”的思考,一方面激發(fā)學(xué)生探究算法的本質(zhì),
理解利用算法解決問題需要滿足正確、有效、高效等相關(guān)要求;另一方面引發(fā)學(xué)
生關(guān)注算法評價要素,意識到算法效率也是一個需要關(guān)注的要素,以及算法效率
可以從“時間”和“空間”兩個方面衡量。
學(xué)生回答的引導(dǎo)方?向:利用算法求解問題,首先要確保所采用的算法能正確
解決問題;其次要能在一定時間內(nèi)完成,且執(zhí)行速度越快越好,存儲空間越少越
好,即占用的資源越少越好,等等。
二、單元學(xué)習(xí)策略
本單元的學(xué)習(xí)要融入具體問題的解決過程。教材中通過猜數(shù)字游戲、“韓信
點兵”等問題讓學(xué)生經(jīng)歷抽象建模、設(shè)計算法、驗證算法、優(yōu)化算法等環(huán)節(jié),體
驗算法的多樣性,并意識到算法的效率。在實際教學(xué)中,教師可以根據(jù)學(xué)生與學(xué)
校的實際情況對問題進行適當(dāng)簡化,鼓勵學(xué)生發(fā)現(xiàn)、分析問題,以解決問題為導(dǎo)
向設(shè)計算法、學(xué)習(xí)新知、探索實踐等。
課題第8課算法的多樣性
1.通過設(shè)計猜數(shù)字的算法,理解順序查找和二分查找的思想,
樹立使用多種方法解決同一個問題的意識。
教學(xué)目標
2.通過驗證猜數(shù)字游戲的算法,初步掌握順序查找和二分查找
的程序設(shè)計方法,提高算法實現(xiàn)的能力。
教學(xué)邕點設(shè)計猜數(shù)字游戲的多種算法。________________________________
教學(xué)難點實現(xiàn)及驗證猜數(shù)字游戲的多種算法。
1.網(wǎng)絡(luò)教室、Python編程環(huán)境。
環(huán)境與素材2.童童家到學(xué)校的圖片。
3.猜數(shù)字游戲的二分查找程序。
教學(xué)過程
一、討論
下圖中,童童從學(xué)校到家有哪幾條路線可走?
二、建構(gòu)
現(xiàn)實中,解決一個問題的算法往往具有多樣性,即可用不同的算法來解決
同一個問題。
例如,解決問題猜數(shù)字游戲問題,除了前面學(xué)過的算法外,還可以采用順
序查找和二分查找算法。
1.問題分析
猜數(shù)字游戲中,同學(xué)A輸入數(shù)字的過程其實是一個“查找”問題,即在
1-100范圍內(nèi)查找目標數(shù)da,可采用多種不同的策略來解決。
例如:
策略一:按順序依次查找。
依次將1,2,3,…,99,100(或100,99,98,…,2,1)與da比較,
直到找到為止。
策略二:取中間數(shù)查找。
1-100范圍內(nèi)的數(shù)是依次增加的,依據(jù)該有序性可依次取中間數(shù)來查找。
先取1T00的中間數(shù)50與da比較,若da等于50,則查找成功;若da小于
50,則取1-49的中間數(shù)25與da比較;若da大于50,則取51-100的中間數(shù)
75與da比較……如此反復(fù),直到找到為止。在b100范圍內(nèi)查找目標數(shù)37
的過程如下所示:
目標數(shù)為37,初始范圍為1T00
12???495051???9899100
中間數(shù)
第一次比電t:37<50,范圍調(diào)整為1-49
12???242526???474849
中間數(shù)
第二次比軾C:37>25,范圍調(diào)整為26-49
2627???363738???474849
中間數(shù)
第三次比較:37-37,查找成功
【小知識】
計算機中的“查找”指根據(jù)根據(jù)所給條件找出滿足條件的的對象,即在存
儲存儲的一批數(shù)據(jù)內(nèi)找出出一個特定的數(shù)據(jù),或者確定在這批數(shù)據(jù)內(nèi)是否存在
這樣的數(shù)據(jù)。
【試一試】
采用“按順序依次查找”的策略,在『100范圍內(nèi)查找數(shù)37,一共需比
較多少次?
2.解決問題的多種算法設(shè)計
根據(jù)解決問題采用的策略,將其設(shè)計成算法。例如,上述猜數(shù)字游戲就可
將“按順序依次查找”設(shè)計成順序查找算法,“取中間數(shù)查找”設(shè)計成二分查
找算法。
算法一:順序查找。假設(shè)目標數(shù)為37,并用變量da表示,取到的數(shù)用變
量cai表示
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 道路養(yǎng)護與管理試題及答案
- 食用昆蟲考試題及答案
- 高中奧數(shù)競賽試題及答案
- 花椒培訓(xùn)考試試題及答案
- 量子力學(xué)重要公式試題及答案
- 設(shè)計理念在家具創(chuàng)作中的體現(xiàn)試題及答案
- 大學(xué)畜牧概論考試試題及答案
- 伊川小學(xué)考試試題及答案
- 保育師證考試試題及答案
- 后勤保潔考試試題及答案
- 2025年中國礦山支護設(shè)備行業(yè)市場規(guī)模及投資前景預(yù)測分析報告
- 鋰電池、新能源汽車火災(zāi)事故滅火救援處置
- 新形勢下如何抓好“兩個經(jīng)常性”工作
- 近三年小升初試卷及答案
- 渠道分銷合同協(xié)議樣本
- 2024年共青團入團積極分子團校結(jié)業(yè)考試試題庫及答案
- 21ZJ111 變形縫建筑構(gòu)造
- 2MWp雙模式光伏發(fā)電工程施工組織方案
- 幼兒園繪本故事:《感謝的味道》 PPT課件
- 好書推薦——《三毛流浪記》PPT通用課件
- 放射性的應(yīng)用與防護教案
評論
0/150
提交評論