国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向計(jì)算思維培養(yǎng)的高中信息技術(shù)教學(xué)案例研究

2024-06-03 11:35:25林溫陽(yáng)
中國(guó)信息技術(shù)教育 2024年10期
關(guān)鍵詞:計(jì)算思維信息技術(shù)教學(xué)模式

林溫陽(yáng)

摘要:本文以Python遞歸函數(shù)應(yīng)用教學(xué)為例,深入剖析可操作的計(jì)算思維培養(yǎng)路徑,嘗試構(gòu)建“設(shè)疑啟思→導(dǎo)疑定向→議疑探究→析疑整合→質(zhì)疑創(chuàng)新”(IVECI)極簡(jiǎn)五環(huán)課堂教學(xué)模式,開(kāi)展面向計(jì)算思維培養(yǎng)的教學(xué)實(shí)踐,以期為高中信息技術(shù)學(xué)科計(jì)算思維培養(yǎng)提供參考。

關(guān)鍵詞:計(jì)算思維;信息技術(shù);遞歸算法;教學(xué)模式

中圖分類號(hào):G434? 文獻(xiàn)標(biāo)識(shí)碼:A? 論文編號(hào):1674-2117(2024)10-0039-04

計(jì)算思維的概念與內(nèi)涵

計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基本概念進(jìn)行問(wèn)題求解、系統(tǒng)設(shè)計(jì)、人類行為理解等涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng),其作為解決復(fù)雜問(wèn)題的一種獨(dú)特思想方法,具有形式化、模塊化、系統(tǒng)化、自動(dòng)化等特點(diǎn)。計(jì)算思維綜合了數(shù)學(xué)思維、工程思維和科學(xué)思維,強(qiáng)調(diào)基于計(jì)算和創(chuàng)新的思維,其本質(zhì)是抽象(Abstract)、模擬(Imitation)與自動(dòng)化(Automation)。[1]《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版2020年修訂)》(以下簡(jiǎn)稱“新課標(biāo)”)也明確指出計(jì)算思維是個(gè)體運(yùn)用計(jì)算機(jī)科學(xué)領(lǐng)域的思想方法形成解決方案而產(chǎn)生的一系列思維活動(dòng)。培養(yǎng)計(jì)算思維就是讓學(xué)生能夠采用計(jì)算機(jī)可以處理的方式進(jìn)行問(wèn)題界定、建立模型、設(shè)計(jì)算法來(lái)解決問(wèn)題,并達(dá)成學(xué)習(xí)遷移。

從計(jì)算思維的視角辨析遞歸經(jīng)典案例

計(jì)算思維培養(yǎng)可以分解為三個(gè)基本步驟:首先,抽象建模,將待求解的問(wèn)題抽象成一個(gè)概念模型;其次,問(wèn)題分解,把復(fù)雜問(wèn)題拆分成若干簡(jiǎn)單子問(wèn)題;最后,設(shè)計(jì)算法,清晰地陳述解決問(wèn)題的指令順序,編程實(shí)現(xiàn)復(fù)雜問(wèn)題的抽象、模擬和自動(dòng)化。以Python語(yǔ)言為例,下列情況通常會(huì)考慮使用遞歸求解:①遞歸式定義,如求n的階乘、楊輝三角等;②遞歸式數(shù)據(jù)結(jié)構(gòu),如鏈表、樹(shù)、圖等;③遞歸式經(jīng)典問(wèn)題,如漢諾塔(Hanoi)問(wèn)題、N皇后問(wèn)題等。

案例1:遞歸求階乘和繪制分形樹(shù)(入門(mén))。

使用Python語(yǔ)言求階乘的方法很多,這是一個(gè)很好的遞歸入門(mén)引例。自定義求n!的遞歸函數(shù),fact(n)是調(diào)用者,函數(shù)內(nèi)部fact(n-1)是被調(diào)用者,以此類推。整個(gè)遞歸調(diào)用過(guò)程如下頁(yè)圖1所示。在情境導(dǎo)課中,使用Python的Turtle庫(kù)編寫(xiě)代碼v繪制分形樹(shù),輕松實(shí)現(xiàn)遞歸算法可視化(如下頁(yè)圖2)。

案例2:青蛙跳臺(tái)階問(wèn)題(簡(jiǎn)單)。

情境問(wèn)題:一只青蛙要跳上20級(jí)臺(tái)階,每次只能跳1級(jí)或2級(jí),問(wèn)有多少種跳法?

問(wèn)題分析:青蛙既然一次能跳1級(jí)或2級(jí)臺(tái)階,那么跳上N級(jí)臺(tái)階的方法是:先跳上N-1級(jí)臺(tái)階,再跳1級(jí)即可,或者先跳上N-2級(jí)臺(tái)階,再跳2級(jí)亦可。因此,跳上N級(jí)臺(tái)階的方法總數(shù)=跳上N-1級(jí)臺(tái)階的方法數(shù)+跳上N-2級(jí)臺(tái)階的方法數(shù)。假定Jump(i)表示跳上i級(jí)臺(tái)階的方法數(shù),則遞推式為Jump(N)=Jump(N-1)+Jump(N-2),而遞歸終止條件為Jump(1)=1,Jump(2)=2。事實(shí)上,這是一個(gè)斐波那契(Fibonacci)數(shù)列。當(dāng)然,若是使用排列組合方法,亦可得到結(jié)果為:種。

案例3:漢諾塔(Hanoi)問(wèn)題(中等)。

情境問(wèn)題:相傳古印度大梵天在創(chuàng)世時(shí),做了3根金剛石柱,在A柱自下而上、由大到小摞有64個(gè)圓盤(pán),他讓婆羅門(mén)把圓盤(pán)全部轉(zhuǎn)移到C柱上,要求每次只能移動(dòng)一個(gè)圓盤(pán),而且始終保持大盤(pán)在下、小盤(pán)在上。問(wèn)至少需要移動(dòng)多少次?

問(wèn)題解析:①當(dāng)n=1時(shí),直接把圓盤(pán)從A柱移到C柱;②當(dāng)n>1時(shí),先將A柱上的(n-1)個(gè)圓盤(pán)通過(guò)C柱移到B柱;③接著把A柱上編號(hào)為n的圓盤(pán)移到C柱;④最后將B柱上的(n-1)個(gè)圓盤(pán)通過(guò)A柱移到C柱,遞歸結(jié)束。最終顯示移動(dòng)n個(gè)圓盤(pán)至少需要2n-1次。

案例4:路邊隨機(jī)停車問(wèn)題(較難)。

情境問(wèn)題:一條馬路長(zhǎng)度為5,問(wèn)平均能停多少輛長(zhǎng)度為1的汽車?

問(wèn)題分析:①將停車區(qū)域起點(diǎn)定為start,終點(diǎn)定為end,最初停車區(qū)域end-start=5;②如果end-start<1表示車位長(zhǎng)度小于車長(zhǎng),就不能停車;③第一輛車A在start與end之間隨機(jī)停放,停車起點(diǎn)范圍為(start,end-1);④第二輛車B在A車停好后,有(start,x)和(x+1,end)兩段可選的停車區(qū)域。接下來(lái),分別調(diào)用自身,遞歸解決問(wèn)題。假設(shè)用M(X)表示馬路長(zhǎng)度為X時(shí)停車數(shù)量的期望值,則馬路最大空間利用率,公式如下。

案例5:八皇后問(wèn)題(最難)。

情境問(wèn)題:將八個(gè)皇后擺放在8×8的棋盤(pán)上,使之互不攻擊,即在同一行、同一列或同一斜線上,最多只能有1個(gè)皇后,問(wèn)共有多少種擺法?

問(wèn)題分析:①首先定義一個(gè)棋盤(pán)上皇后位置為arr[R,C]、當(dāng)前皇后擺放行為ROW、問(wèn)題規(guī)模為N的遞歸函數(shù);②遍歷當(dāng)前行每一列,逐列嘗試擺放位置,若符合約束條件(不在同一行、同一列或同一斜線上),則將皇后置于此列,接著調(diào)用自身,轉(zhuǎn)到下一行;③如果遞歸調(diào)用返回值為真,說(shuō)明下一行的皇后找到了合適的位置,那么子問(wèn)題的求解方法可行,當(dāng)前皇后的擺放位置正確,此時(shí)如果全部擺放完畢,就算完成一種擺法;④如果遞歸調(diào)用返回值為假,則說(shuō)明下一行的皇后找不到合適的位置,就需要回溯,把當(dāng)前皇后右移一格再次嘗試遞歸探索;⑤如果遍歷完當(dāng)前行所有列,下一行的皇后仍然找不到合適的位置,那就繼續(xù)回溯直至某一行,甚至回溯到第一行,以尋找合適的擺放位置;⑥在主函數(shù)中從第一行開(kāi)始嘗試擺放第一個(gè)皇后,遞歸調(diào)用自身直到所有的皇后擺放完畢,最后輸出結(jié)果。

面向計(jì)算思維培養(yǎng)提煉遞歸核心要義

上述遞歸算法經(jīng)典案例分析,由易到難,分層設(shè)計(jì)學(xué)習(xí)任務(wù),為學(xué)生提供適合其認(rèn)知心理規(guī)律的多樣化學(xué)習(xí)資源、認(rèn)知工具和認(rèn)知策略,促進(jìn)學(xué)生深度學(xué)習(xí)遞歸、迭代、循環(huán)和遍歷等程序設(shè)計(jì)策略,發(fā)展學(xué)生的高階計(jì)算思維能力。

1.遞歸算法的基本原理

遞歸(Recursion)是通過(guò)不斷調(diào)用自身實(shí)現(xiàn)程序在執(zhí)行過(guò)程中對(duì)問(wèn)題進(jìn)行降維求解。遞歸作為一種重要的程序設(shè)計(jì)方法,能有效地解決復(fù)雜性問(wèn)題,遞歸程序的底層邏輯是使用堆棧(Stack)—— 一種計(jì)算機(jī)科學(xué)中較為常見(jiàn)的抽象數(shù)據(jù)類型(ADT)。Python遞歸函數(shù)的格式如圖3所示。

遞歸算法的工作原理是:當(dāng)程序運(yùn)行首次進(jìn)入遞歸函數(shù)時(shí),需要進(jìn)行條件判斷,符合終止條件則返回結(jié)果,不符合條件則調(diào)用自身進(jìn)入函數(shù)內(nèi)層。這種反復(fù)調(diào)用自身,自頂向下逐層展開(kāi),直至進(jìn)入最小可求解子問(wèn)題的過(guò)程即為“遞”;待到內(nèi)層函數(shù)執(zhí)行完畢,由內(nèi)向外步步回溯,直至返回最終結(jié)果的過(guò)程即為“歸”。遞歸算法必須具備兩個(gè)條件:一是存在終止條件,二是需要調(diào)用自己。二者缺一不可。需要說(shuō)明的是,終止條件語(yǔ)句必須寫(xiě)在遞歸調(diào)用語(yǔ)句之前,否則會(huì)出現(xiàn)堆棧溢出,致使遞歸函數(shù)進(jìn)入死循環(huán)。當(dāng)然,遞歸函數(shù)的終止條件可以不止一個(gè),遞歸調(diào)用也可以多個(gè)。遞歸算法的根本在于問(wèn)題本身是否可以通過(guò)層層拆解到最小粒度來(lái)求解。

2.剖析遞歸算法的優(yōu)點(diǎn)與不是

優(yōu)點(diǎn):遞歸通常是把一個(gè)大型的復(fù)雜問(wèn)題拆分為多個(gè)子問(wèn)題,拆分后的子問(wèn)題除了數(shù)據(jù)規(guī)模變小,其解決思路和原問(wèn)題完全一致。遞歸只關(guān)心向下一層的實(shí)現(xiàn),而并不關(guān)心更下一層的細(xì)節(jié),因此遞歸函數(shù)結(jié)構(gòu)清晰、定義簡(jiǎn)單。遞歸在計(jì)算機(jī)領(lǐng)域被廣泛應(yīng)用,它不單是一種計(jì)算方法,更是一種思維方式。

不足:實(shí)現(xiàn)遞歸需要大量的PUSH(壓棧)和POP(彈棧)操作,用于執(zhí)行上下文的現(xiàn)場(chǎng)保存和現(xiàn)場(chǎng)恢復(fù),其內(nèi)存資源消耗遠(yuǎn)大于非遞歸函數(shù)調(diào)用,算法運(yùn)行效率較低。過(guò)深的遞歸調(diào)用還可能出現(xiàn)堆棧溢出的情況,因此,編寫(xiě)遞歸代碼需謹(jǐn)慎,務(wù)必設(shè)計(jì)好遞歸出口(終止條件),在必要時(shí)應(yīng)該把遞歸算法轉(zhuǎn)化為非遞歸算法。

以計(jì)算思維為主題進(jìn)行逆向教學(xué)設(shè)計(jì)

傳統(tǒng)教學(xué)以內(nèi)容或活動(dòng)為導(dǎo)向,因缺乏清晰的引導(dǎo)性思維目標(biāo)和明確的表現(xiàn)性評(píng)價(jià)設(shè)計(jì),學(xué)生難以真正地自主架構(gòu)知識(shí)體系。威金斯和麥克泰格提出追求理解的教學(xué)設(shè)計(jì)理論(Understanding by Design,簡(jiǎn)稱UbD),強(qiáng)調(diào)教學(xué)要“理解為先,由終定始”,幫助學(xué)生掌握知識(shí)、理解意義、實(shí)現(xiàn)遷移,以促進(jìn)學(xué)生的可持續(xù)發(fā)展。[2]下面,筆者以Python遞歸函數(shù)應(yīng)用為例,依據(jù)UbD即理解為先的教學(xué)理念進(jìn)行逆向教學(xué)設(shè)計(jì)。

1.明確項(xiàng)目學(xué)習(xí)目標(biāo)

依據(jù)新課標(biāo)、教材要求和學(xué)生實(shí)際,重組信息技術(shù)學(xué)科教學(xué)內(nèi)容,開(kāi)發(fā)跨學(xué)科主題項(xiàng)目學(xué)習(xí)資源,挖掘其中的計(jì)算思維元素,設(shè)計(jì)項(xiàng)目學(xué)習(xí)目標(biāo)(如上頁(yè)表1)。[3]

2.制訂學(xué)習(xí)評(píng)價(jià)標(biāo)準(zhǔn)

從項(xiàng)目學(xué)習(xí)目標(biāo)出發(fā),設(shè)計(jì)學(xué)生學(xué)習(xí)評(píng)價(jià)量表(過(guò)程性評(píng)價(jià)和結(jié)果性評(píng)價(jià)),考核學(xué)生的計(jì)算思維核心能力,如分解思維能力、抽象思維能力、算法思維能力等,關(guān)注學(xué)生的課堂學(xué)習(xí)行為表現(xiàn),及時(shí)捕捉反映學(xué)生理解程度的行為數(shù)據(jù),做好發(fā)展性學(xué)習(xí)評(píng)價(jià),促進(jìn)學(xué)生的綜合素養(yǎng)全面發(fā)展。

3.設(shè)計(jì)項(xiàng)目學(xué)習(xí)活動(dòng)

有研究表明,項(xiàng)目式學(xué)習(xí)+配對(duì)編程對(duì)計(jì)算思維培養(yǎng)效果顯著。[4]這是發(fā)展學(xué)生計(jì)算思維的重要教學(xué)方法。筆者以Python遞歸函數(shù)應(yīng)用教學(xué)為例,嘗試構(gòu)建“設(shè)疑啟思→導(dǎo)疑定向→議疑探究→析疑整合→質(zhì)疑創(chuàng)新”(IVECI)極簡(jiǎn)五環(huán)教學(xué)模式,精心設(shè)計(jì)課堂師生活動(dòng),并提供項(xiàng)目式學(xué)習(xí)資源與工具,在漸進(jìn)性的問(wèn)題推進(jìn)和開(kāi)放性配對(duì)編程中培養(yǎng)學(xué)生的計(jì)算思維(如上頁(yè)表2)。

總結(jié)與展望

高中信息技術(shù)課堂是計(jì)算思維培養(yǎng)的主陣地,編程教育是培養(yǎng)學(xué)生計(jì)算思維能力的絕佳切入口。高中信息技術(shù)新版教材選用Python作為計(jì)算思維學(xué)習(xí)工具,用于計(jì)算思維培養(yǎng),具有重要的實(shí)踐價(jià)值和現(xiàn)實(shí)意義。上述遞歸算法的經(jīng)典案例引導(dǎo)學(xué)生就實(shí)際問(wèn)題進(jìn)行抽象建模、設(shè)計(jì)算法、迭代改進(jìn)等,為培養(yǎng)學(xué)生的計(jì)算思維提供了可操作的路徑。

參考文獻(xiàn):

[1]周偉佳,王祖浩.科學(xué)教育中的計(jì)算思維:理論框架與課程設(shè)計(jì)[J].中國(guó)電化教育,2018(11):72-78.

[2]G.Wiggins & J.McTighe.追求理解的教學(xué)設(shè)計(jì)[M].閆寒冰,等,譯.上海:華東師范大學(xué)出版社,2017.

[3]宿慶,張文蘭,王海,等.面向高中生計(jì)算思維培養(yǎng)的信息技術(shù)課程項(xiàng)目式學(xué)習(xí)研究[J].電化教育研究,2022(08):109-115+122.

[4]馬志強(qiáng),劉亞琴.從項(xiàng)目式學(xué)習(xí)與配對(duì)編程到跨學(xué)科綜合設(shè)計(jì)——基于2006-2019年國(guó)際K-12計(jì)算思維研究的元分析[J].遠(yuǎn)程教育雜志,2019(05):75-84.

本文系福建省教育科學(xué)“十四五”規(guī)劃2023年度立項(xiàng)課題“雙減背景下青年教師課堂教學(xué)行為診斷能力提升策略研究”(立項(xiàng)號(hào):FJJKZX23-390)的研究成果之一。

猜你喜歡
計(jì)算思維信息技術(shù)教學(xué)模式
群文閱讀教學(xué)模式探討
新一代信息技術(shù)征稿啟示
新一代信息技術(shù)征稿啟示
新一代信息技術(shù)征稿啟示
信息技術(shù)在幼兒教育中的有效應(yīng)用
甘肅教育(2020年2期)2020-09-11 08:00:44
程序設(shè)計(jì)課程中計(jì)算思維和應(yīng)用能力培養(yǎng)問(wèn)題研究
民族高校C語(yǔ)言程序設(shè)計(jì)課程教學(xué)改革的研究
軟件工程(2016年8期)2016-10-25 16:03:32
算法的案例教學(xué)探析
淺談藝術(shù)專業(yè)學(xué)生計(jì)算思維能力的培養(yǎng)
“一精三多”教學(xué)模式的探索與實(shí)踐
襄垣县| 甘孜| 定结县| 辽宁省| 财经| 凤庆县| 安化县| 红安县| 太仆寺旗| 曲阳县| 长宁县| 诸暨市| 梅河口市| 嘉峪关市| 扶绥县| 巴林右旗| 昭平县| 类乌齐县| 邯郸县| 邯郸市| 兴化市| 三河市| 沿河| 甘肃省| 三台县| 衡阳市| 嘉鱼县| 永新县| 右玉县| 高台县| 安化县| 大庆市| 新丰县| 侯马市| 宾阳县| 牡丹江市| 类乌齐县| 南宫市| 逊克县| 长岭县| 南城县|