趙珺 山東省威海經(jīng)濟(jì)技術(shù)開發(fā)區(qū)皇冠中學(xué)
本單元是六條邏輯主線中“身邊的算法”與“過程與控制”兩大內(nèi)容模塊的學(xué)習(xí)基礎(chǔ)。本單元借助學(xué)習(xí)與生活中的實(shí)例,讓學(xué)生體驗(yàn)身邊的算法,理解算法是通過明確的、可執(zhí)行的操作步驟描述的問題求解方案,并能用自然語言、流程圖、程序代碼等方式描述簡單的算法。讓學(xué)生了解算法的基本特征,能分析簡單算法的執(zhí)行過程與結(jié)果,初步體驗(yàn)在解決同一問題時(shí),不同算法的差異性。
利用生活的實(shí)例,引導(dǎo)學(xué)生自覺利用計(jì)算機(jī)科學(xué)技術(shù)思想和方法分析問題,主要的思想方法是將復(fù)雜的問題簡化,將煩瑣的問題分解,學(xué)會(huì)將問題的重點(diǎn)進(jìn)行從整體到局部的轉(zhuǎn)化。利用對問題的抽象、建模,運(yùn)用合理的算法求解問題,主要的方法是將具體的問題抽象,將無序的問題整理成有序的問題,將具體的案例構(gòu)建成數(shù)學(xué)模型,把具體的求解方法轉(zhuǎn)化為算法,并能將求解問題的方法應(yīng)用于其他同類問題的解決中。
在學(xué)習(xí)本單元內(nèi)容之前,大部分學(xué)生沒有主動(dòng)思考智能生活背后的具體原理與技術(shù),隨著本單元的學(xué)習(xí)的加深,算法、算力、大數(shù)據(jù)等概念的引入與理解,會(huì)給學(xué)生的認(rèn)知帶來一定的沖擊力。
①理解算法的概念與算法的形成過程。
②能夠用自然語言、流程圖等方式來描述簡單的算法。
③了解算法的基本特征及基本控制結(jié)構(gòu),能分析簡單算法的執(zhí)行過程與結(jié)果,并通過程序進(jìn)行驗(yàn)證。
大任務(wù)內(nèi)容:活動(dòng)主題——沙漠綠化活動(dòng)。
任務(wù)執(zhí)行:確定主題、抽象問題、分解問題、建立模型、描述算法、程序驗(yàn)證。
圖1
1.單元目標(biāo)
①借助學(xué)習(xí)與生活中的實(shí)例,體驗(yàn)身邊的算法,理解算法是通過明確的、可執(zhí)行的操作步驟描述的問題求解方案,能夠用自然語言、流程圖等方式描述算法。
②學(xué)習(xí)過程中涉及簡單的抽象、分解、建模、算法設(shè)計(jì)等思維活動(dòng),提升計(jì)算思維。
2.學(xué)習(xí)目標(biāo)
①從“沙漠綠化”實(shí)例入手,自覺利用計(jì)算機(jī)科學(xué)技術(shù)思想和方法分析問題,將復(fù)雜的問題分解,將煩瑣的問題簡化,學(xué)會(huì)將問題進(jìn)行從整體到局部的轉(zhuǎn)化,并使用自然語言描述算法。
②利用“求綠化樹苗數(shù)量”的問題對具體問題的抽象,將無序的問題整理成有序的問題,將具體的事例構(gòu)建成數(shù)學(xué)模型,把具體的求解方法轉(zhuǎn)化為算法,同時(shí)學(xué)習(xí)用流程圖描述算法。
③“對求樹苗數(shù)量算法的優(yōu)化”利用多種算法解決同一問題,體驗(yàn)利用不同算法解決同一問題在空間效率上的差別,提升學(xué)生對算法的理解。
④拓展活動(dòng),提升舉一反三的能力,能夠?qū)⑶蠼鈫栴}的方法應(yīng)用于其他同類問題的解決中,并能用恰當(dāng)?shù)姆绞矫枋鏊惴ā?/p>
3.問題序列
①用自然語言描述樹苗數(shù)量的方法與步驟。
②用計(jì)算機(jī)解決問題的思路求樹苗數(shù)量的方法與步驟。
③用流程圖的方式將算法描述出來并進(jìn)行優(yōu)化。
?
4.評價(jià)方案(如上頁表)
5.學(xué)習(xí)進(jìn)程設(shè)計(jì)
環(huán)節(jié)一:情境引入,引出“沙漠綠化”算法
學(xué)習(xí)任務(wù):用自然語言簡單描述本質(zhì)問題的解決方法。
塔克拉瑪干沙漠是中國最大的沙漠,被稱為“死亡之?!?。直到20世紀(jì)90年代,建設(shè)者在這片浩瀚的大沙漠中創(chuàng)造出令世人驚嘆的綠色奇跡。(觀看視頻)
①為改變沙漠的環(huán)境,項(xiàng)目要求在這片沙漠上種植一片胡楊林?,F(xiàn)在知道胡楊樹種植的間距為4米。那么,我們需要訂購多少棵胡楊樹苗呢?
引導(dǎo)學(xué)生思考問題:沙漠的面積有多大?每棵胡楊樹的占地面積是多少?需要多少棵胡楊樹苗?
②用語言來描述具體的算法。
第一步:計(jì)算出沙漠的面積。
第二步:計(jì)算出每棵胡楊占地的面積。
第三步:兩面積相除,計(jì)算出需要的樹苗數(shù)。
設(shè)計(jì)意圖:設(shè)置綠化沙漠的情境,引導(dǎo)學(xué)生從情境中抽象出本質(zhì)問題,并簡單描述算法。將算法進(jìn)一步轉(zhuǎn)化成計(jì)算機(jī)能夠看懂的語言,從而引出后面的學(xué)習(xí)。
環(huán)節(jié)二:分解建模,設(shè)計(jì)算法
學(xué)習(xí)任務(wù):分解建模,將算法設(shè)計(jì)進(jìn)一步細(xì)化成計(jì)算機(jī)能夠讀懂的算法。
①怎樣計(jì)算可以求出沙漠的面積?
在地圖上勾畫出沙漠的形狀,然后將不規(guī)則的圖形分解成能夠進(jìn)行計(jì)算的圖形,根據(jù)測量的數(shù)據(jù)求出沙漠的面積(如圖2)。
圖2
細(xì)化算法:先沿邊緣畫出地形并測量,然后分別求出梯形面積a(a=(12+13)*9.8/2)與兩個(gè)三角形的面積b(b=7*7/2)、c(c=6*8/2),再求和得出沙漠的面積為s(s=a+b+c)。
設(shè)計(jì)意圖:從復(fù)雜的情境中抽離問題,將看似不能解決的問題轉(zhuǎn)化為可以解決的問題,將復(fù)雜的問題分解成小問題,讓學(xué)生用轉(zhuǎn)化的思想解決問題。
②每棵樹苗的占地面積是多少?
胡楊樹苗的種植間距為4米,計(jì)算出每棵樹的占地面積(建立模型)。
設(shè)計(jì)意圖:在解決這個(gè)問題時(shí),學(xué)生大概會(huì)提出圖中的三種想法(如下頁圖3),建立模型可以幫助學(xué)生正確理解問題。這個(gè)過程的意義在于引導(dǎo)學(xué)生用建模的思想解決問題。
圖3
③描述算法。
第一步:沿邊緣畫出地形并測量,然后分別求出梯形面積a(a=(12+13)*9.8/2)與兩個(gè)三角形的面積b(b=7*7/2)、c(c=6*8/2),再求和,得出沙漠的面積為S(s=a+b+c)。
第二步:計(jì)算出每棵胡楊占地的面積為n(n=4*4)。
第三步:用s/n得出大約需要的樹苗數(shù)m(m=s/n)。
從問題中抽象出6個(gè)變量,分別表示沙漠的面積s=a+b+c,小樹苗占地的面積n,樹苗的棵數(shù)m,建立的變量關(guān)系是m=s/n。在求得沙漠面積的過程中,利用切割的方式求得總面積,最后將解決問題的整個(gè)過程描述出來,就完成了算法設(shè)計(jì)。
設(shè)計(jì)意圖:讓學(xué)生經(jīng)歷解決問題的具體過程,學(xué)習(xí)分解與建模思想的實(shí)際應(yīng)用,同時(shí)幫助學(xué)生理解算法設(shè)計(jì)的過程。
環(huán)節(jié)三:用流程圖描述算法,并進(jìn)行分析優(yōu)化
學(xué)習(xí)任務(wù):用流程圖完成算法,并運(yùn)行出結(jié)果。
用自然語言描述算法雖然比較簡單,但是寫的時(shí)候會(huì)比較煩瑣。可不可以畫出來?
①學(xué)習(xí)流程圖圖例,對照前面的算法,嘗試著把它畫出來。
②打開“畫程”軟件,嘗試操作,完成求樹苗的算法流程圖,并運(yùn)行。
設(shè)計(jì)意圖:利用“畫程”將自然描述的算法轉(zhuǎn)化為流程圖,并能在計(jì)算機(jī)上運(yùn)行出結(jié)果,體驗(yàn)流程圖的清晰明了,幫助學(xué)生理順解決問題的邏輯思路,理解計(jì)算機(jī)解決問題的過程。
③用程序描述算法。
第一步,用“畫程”軟件直接可以轉(zhuǎn)換到編程環(huán)境運(yùn)行。用程序描述算法,就完成了從人解決問題的方式向計(jì)算機(jī)解決問題的方式轉(zhuǎn)化。
第二步,對算法流程圖進(jìn)行深入分析,能否優(yōu)化步驟。
設(shè)計(jì)意圖:利用“畫程”將流程圖轉(zhuǎn)化為程序代碼,在計(jì)算機(jī)上運(yùn)行出結(jié)果。同時(shí),將程序進(jìn)行簡化,幫助學(xué)生理解算法優(yōu)化思想。
環(huán)節(jié)四:總結(jié)提升與拓展延伸
知識(shí)梳理:
①算法描述方式的特點(diǎn)。
自然語言:簡單,但繁瑣。
流程圖:直觀、清晰、易懂。
程序代碼:熟悉某種程序語言。
②算法設(shè)計(jì)思路。
抽象問題:具體—抽象、無序—有序。
分解建模:復(fù)雜—簡單、數(shù)據(jù)—變量、個(gè)案—模型。
算法描述:自然語言、流程圖、程序代碼。
設(shè)計(jì)意圖:幫助學(xué)生理解不同算法描述的特點(diǎn),理順?biāo)惴ㄔO(shè)計(jì)的思路。
6.作業(yè)設(shè)計(jì)
①完善:采用不同的方式,描述“沙漠綠化”活動(dòng)需要樹苗數(shù)的算法。
②用流程圖描述:輸入正方形的邊長,輸出正方形的面積和周長。
設(shè)計(jì)意圖:作業(yè)①的難度較低,目的是鞏固本節(jié)課所學(xué)的內(nèi)容;作業(yè)②的難度提升,目的是提升學(xué)生的應(yīng)用能力。
1.注重從問題情境抽象本質(zhì)問題的過程
在計(jì)算沙漠的面積時(shí),學(xué)生的理解比較順利。但是在求每棵樹苗的占地面積時(shí),學(xué)生的理解出現(xiàn)了多樣化。當(dāng)每相鄰的兩棵樹苗的間距為4米時(shí),學(xué)生有了不同的思考。教師引導(dǎo)學(xué)生通過畫圖、描點(diǎn)、分析、歸納,終于明確了每棵樹苗的占地面積。這個(gè)解決問題的過程,對學(xué)生來說就是如何從情境問題抽象到本質(zhì)問題的過程。
2.注重把大問題拆解成小問題的過程
當(dāng)把問題從情境中抽象出來后,如何將大問題分解成小問題,也是理解算法的重要環(huán)節(jié)。通過對本質(zhì)問題的思考,將樹苗棵數(shù)問題轉(zhuǎn)化為綠化面積與每棵樹苗占地面積兩個(gè)小問題。在學(xué)習(xí)過程中,引導(dǎo)學(xué)生注重思考的過程,而不是問題本身,這樣學(xué)生解決問題的思路就能慢慢清晰。
3.注重用不同方式描述解決問題的過程
采用不同的方式描述解決問題的過程,目的是培養(yǎng)學(xué)生將自然語言結(jié)構(gòu)化、邏輯化、圖形化,更清晰地描述出各要素之間的關(guān)系。這樣更有利于學(xué)生生成解決具體問題的思路,并對其進(jìn)一步優(yōu)化。學(xué)生在操作時(shí),運(yùn)用了“畫程”軟件,更直觀地理順解決問題的思路,同時(shí)可以直接運(yùn)行程序結(jié)果,實(shí)現(xiàn)計(jì)算機(jī)解決問題的自動(dòng)化過程。
本節(jié)課算法的學(xué)習(xí)以實(shí)際問題為載體,借鑒了學(xué)生較為成熟的數(shù)學(xué)基礎(chǔ),選擇了學(xué)生熟悉且沒有認(rèn)知障礙的問題。在解決問題的過程中,學(xué)生要選擇用符號表示事物,要分析跟蹤算法的執(zhí)行,要理解信息、數(shù)據(jù)和算法之間的關(guān)系,要體會(huì)問題求解過程的自動(dòng)化。計(jì)算思維的兩個(gè)核心要素是抽象和問題求解過程的自動(dòng)化,兩者在本課的學(xué)習(xí)過程中都得到了比較充分的體現(xiàn)。
從教學(xué)的效果來看,學(xué)生順利完成了本節(jié)課的學(xué)習(xí)目標(biāo)。在最后的小結(jié)環(huán)節(jié),能夠感受到學(xué)生初步理解了從人解決問題到用計(jì)算機(jī)解決問題的自動(dòng)化過程。算法不僅是一個(gè)概念,更是讓學(xué)生解決實(shí)際問題的能力,在課堂上,教師要通過設(shè)計(jì)真實(shí)的學(xué)習(xí)活動(dòng),讓學(xué)生充分體驗(yàn)解決問題的過程即算法形成的過程,真正地提升學(xué)生的學(xué)科素養(yǎng)。