999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

編程:一種觀察世界的新視角

2018-01-06 01:03:40胡金錦
電腦知識與技術 2017年35期
關鍵詞:程序

胡金錦

摘要:讓學生學習編程,引導學生深度思考算法及其工作流程,親歷問題建模、算法設計、程序實現及優化的完整過程,引領學生從計算機科學家視角分析問題、解決問題,對于學生而言,無疑是一種觀察世界的全新視角。

關鍵詞:算法;程序;計算思維;冒泡排序

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)35-0126-03

伴隨面向對象程序語言的興起,算法思維與建模能力的培養在高中信息技術課堂中一度被弱化,原因是編程環境的可視化和控件的事件響應,以及追求程序課堂的趣味性,讓算法與程序設計課向多媒體技術方向發展。這樣的課堂雖然沒有拋棄程序基本語言的學習,但是漂亮的程序代碼、嚴謹規范的語言風格、計算思維的訓練卻被忽視。我們在程序教學的路途中,常有茫然失措、忘了初心的感覺。

著名的計算機科學家、圖靈獎得主艾茲格·迪杰斯特拉說:“我們所使用的工具影響著我們的思維方式和思維習慣,從而也將深刻地影響著我們的思維能力。”計算機給我們提供了一種全新的思維方式——計算思維。美國卡內基梅隆大學周以真教授認為:計算思維是人們運用計算機科學思想與方法進行問題求解、系統設計,以及人類行為理解等涵蓋計算機科學廣度的一系列思維活動。新課標將“計算思維”引入課堂,使信息技術課程教學從注重實踐操作的技術素養層面上升到注重思維素養培養的層面。

下面,我們以《冒泡排序》為例來談如何在程序設計課中落實計算思維的養成,以期拋磚引玉,與同行們一起努力建構更好的算法與程序設計教學模式。

1 第一層次思維:實際問題的抽象與量化

計算機思維的本質是以“0”和“1”為基礎的數字量來反映真實世界。“模”“數”的轉換是人類與計算機建立聯系的紐帶。因此,實際問題的抽象與量化是計算思維形成的第一層次。下面是我在課堂中引導學生體驗實際問題抽象量化的一個課堂片段:

師:生活中,我們經常碰到排隊的情況,比如:操場上排隊做操、醫院里排隊看病。

我邀請第一排6位同學上來,要求學生按身高進行排序。“不對不對,生一應該排在生二后面……”,下面學生囔囔著。6位學生前前后后調整了幾次總算排好了位置。

接著,我讓后面一排6位同學先用記號筆把身高寫在A4紙上,然后到上面排隊,大家互相看看身高,不一會就排好了。

師(指著其中一位換到前面去的同學):請這位同學說說為什么第二次排隊效率比較高。

這時學生一般會提到數字標明比較明確,方便比較大小。

(學生體驗到了抽象與量化,在問題處理中的優勢。)

師:學生身高抽象為數學量以后,使問題簡潔明確,方便我們處理,所以下面的同學一看就知道順序了。排隊是一種排序——通過調整位置,把雜亂無章的數據變成有序數據。

師:當學生數量比較多,比如在操場上,我們就沒法一眼看出誰身高第一、誰第二、誰第三……。其實,我們人腦的計算力是有限的,當隨之人數的增加,數據規模就會擴大,人腦處理就會越來越困難,這時我們可以借助計算機。要讓計算機幫我們排序,我們首先要記錄6位同學的身高數據。我們用哪種變量類型比較適合?

生:數組。

師:嗯,數組。但計算機生活在“01”世界里,有它自己的布爾智慧,我們生活中的排序思維方法不能直接移植給計算機,而需要通過計算機的布爾邏輯特性進行算法設計以做到人機互適。計算機排序算法的類型很多,這節課我們來學習一種比較典型的排序算法“冒泡排序”。

2 第二層次的思維:基于模型建構算法

計算思維源自數學思維,像所有的科學一樣,其基礎建筑于數學之上。計算思維又源自工程思維,基本計算設備的限制迫使計算機學家必須考慮計算機的特性。在教學中能突破簡單問題的求解,挖掘人機共存算法思維顯得尤為重要。教師可以通過模擬執行法、自頂向下逐步求精法,特殊到一般歸納總結法等,給學生展示與剖析算法的原理與思想。

2.1 模擬執行,體驗計算機處理數據的過程。

教師通過PPT展示冒泡排序數據存儲結構:

表1

[下標 1 2 3 4 5 6 數組a() 49 97 65 13 76 38 ]

教師模擬計算機完成第一趟數據的比較和交換過程后:

師:數據兩兩比較一共比較了幾次?

生:5次。

師:第一趟完成后數據有什么特征?

學生交流討論得出結論,最大數97被交換到了最后。

師:第二趟比較需要比較幾次?

學生交流討論,得出結論第二次比較只需比較4次,因為最大數已經排定。

教師再演示第二遍的過程讓學生印證自己的想法。

第二遍排序結束后,讓學生寫出第三趟排序結果,了解學生的掌握情況。之后教師進行適當的總結,讓學生繼續觀察第四、第五遍的排序結果。總結出冒泡排序的規律:

(1) 從一端開始,逐對進行相鄰元素比較

(2) 如果前一個數比后一個數大,則進行交換

(3) 重復(1)、(2)步驟直到得到一個最值(位置右端)

(4) 重復(1)、(2)、(3)步處理n-1趟,完成排序

2.2 畫流程圖,感悟自頂相下逐步求精的思想

教師以具體的6個數升序排序為例,由最簡單的流程圖1開始,讓學生回顧冒泡排序的特點,每趟比較可以確定一個最數(最大或最小),確定完成6個數排序需要5趟,得出流程圖2。

得出流程圖2后,教師讓學生思考:這種結構實際上屬于什么結構?(循環結構)引入變量i進行計數,使用循環結構流程圖進行進一步細化,得到流程圖3。后拓展到n個數的情況,得到流程圖4。

這里需要引入一個j變量來標識正在參加比較的數組元素。確定第i趟j的取值范圍為:1到n-i,得到圖6。

在分析相鄰數據比較交換模塊時,可以描述為a(j)與下一個數a(j+1)比較大小。如果a(j)>a(j+1)就交換數據位置,得到圖7。

再將“a(j),a(j+1)數據交換位置”流程細化為:t=a(j):a(j)=a(j+1):a(j+1)=t得到圖8。數據交換需結合變量賦值原理進行講解:變量名的實質是申明內存單元,賦值的過程是數據寫入變量名所指內存單元的過程,新數據寫入會覆蓋原來的數據,造成數據丟失。

至此,所有問題、難點自頂向下逐一解決后,用自底部向上的思路形成下面總流程圖,如圖9。

3 第三層次思維:從算設計到代碼實現

要讓計算機解決問題,需要將算法用計算機“語言”表示并告知計算機,這個過程稱為“代碼實現”或“編程”。學生若缺乏上機編程,就無法充分理解變量定義、邏輯運算、循環嵌套、形參實參等運行機制,無法深度思考算法及其工作流程。本環節通過關鍵代碼引導的方式讓學生動手編寫程序,旨在讓學生通過編寫代碼、調試程序,親歷完整的編程過程,加深對算法的理解與應用,同時培養學生認真、嚴謹、堅韌的優秀品質,教學環節如下:

首先,講解關鍵程序段實現方法。

1) i:控制冒泡排序的趟數,由1到n-1

for i=1 to n-1

每趟確定一個最大數

next i

2) j:控制每一趟的處理過程,控制數組下標,由1變到n-i

for j=1 to n-i

a(j)與a(j+1)進行比較判斷是否互換

next j

3) a(j)與a(j+1)互換

t=a(j):a(j)=a(j+1):a(j+1)=t

接著,讓學生對照流程圖,自下往上,寫出主要參考代碼:

for i=1 to n-1

for j=1 to n-i

if a(j)>a(j+1) then

t=a(j):a(j)=a(j+1):a(j+1)=t

end if

next j

next i

在編程實現環節,學生遇到的錯誤五花八門,一般我們可以分為三類:編譯錯誤;運行錯誤;邏輯錯誤。錯誤是課堂的生成性教學資源,是教師進一步展開教學的依據:如運行錯誤往往與數據溢出有關,可以加深學生對變量存儲的理解,如邏輯錯誤,往往與學生對算法理解不到位有關,可以引導學生正確理解算法。教師要引導學生用分類的思想判別錯誤,用模塊化的思想縮小錯誤范圍,用逐步調試的方法鎖定錯誤,最終達到預期效果,使學生分析問題,解決問題的能力得到提升。

4 第四層次思維:逐步養成“迭代”的思維

學習的最高層次是應用,即解決實際問題。當我們面對實際問題,通常通過觀察弄清問題,抓住問題的特征進行廣泛的聯想、檢索和回憶,制定選擇最優解決方案。能否找到合適的策略與觀察問題的角度及聯想范圍有關,受學生已有知識與經驗的制約。在學生思維受阻時,我們應引導學生調整思維方向,變換角度進行分析思考,直到產生新的思路,對培養學生解決問題的能力與創新能力十分有益。

在程序與算法模塊的實際教學中,可以通過對算法變形、優化及情境模擬,培養學生聯想、檢索、回憶等解決問題的能力。教學環節設計需要注意以下幾點:第一要有目的性,要明確通過拓展是使學生掌握算法的哪些外延與內涵,還是滲透一些算法思想與方法,第二要有適度性,過于簡單易陷入簡單的重復,無法提高學生思維品質,過于復雜會挫傷學生學習積極性。第三要學會放手,靜待花開。通過教師的信任與等待,以及必要時機的釋疑,最終厚積薄發,學生會成為獨立自主、敢于質疑、有創造力與創新精神的學習資者。

在冒泡排序教學中,可以安排一系列遞進的教學任務,如同質化任務:將“升序冒泡排序程序”改為“降序冒泡排序”,加深了學生對相鄰元素比較判斷的理解;優化任務:讓學生討論當某趟比較過程中沒有數發生交換,是否需要在進行下一趟比較交換,給學生灌輸流程優化的思想;變形任務:將“從前向后冒泡排序”改為“從后往前冒泡排序”,綜合檢驗學生對冒泡思想的掌握與編程實現的能力;應用任務:評委打分,去掉最高分、最低分的實現,提高學生解決實際問題的能力……

正式在這種算法不斷優化的“迭代”過程中,學生的計算思維才能獲得不斷的提升。

5 結束語

當“程序驅動”的數字化工具滲透到人們生活、學習和工作的方方面面,甚至成為人們生活的一部分時,人們不僅需要具

備操作這些技術工具的技能,同樣需要深層次理解這些技術工具,知道它們的工作原理和工程思想,并學會運用這些思想,優化我們的工作與生活,即發展計算思維。讓學生學習編程,引導學生深度思考算法及其工作流程,親歷完整的編程過程,學會像計算機科學家一樣思考,對于他們的意義可謂一種觀察世界的全新視角。

參考文獻:

[1] 李鋒,熊璋.面向核心素養的信息技術課程:數據與計算”模塊[J].中國電化教育,2017,1(360).

[2] 邵紅祥.基于計算思維的高中信息技術選修課程設計與開發[J].中國信息技術教育,2016(17).

[3] 任樟輝.數學思維論[M].南寧:廣西教育出版社,1996.

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 99在线视频网站| 国产精品三级av及在线观看| 97se亚洲综合在线| 亚洲成人精品久久| 国产成人精品一区二区秒拍1o | 国产成人精品综合| 精品视频一区二区观看| 久久狠狠色噜噜狠狠狠狠97视色 | 亚洲区欧美区| 中国国产A一级毛片| 欧美69视频在线| 国产成人一区在线播放| 亚洲av无码成人专区| 日韩精品亚洲精品第一页| 久久 午夜福利 张柏芝| 91最新精品视频发布页| 亚洲最大综合网| 色悠久久久久久久综合网伊人| www中文字幕在线观看| 熟妇人妻无乱码中文字幕真矢织江| 亚洲一区二区成人| 日韩av电影一区二区三区四区| 国产成人91精品免费网址在线| 国产性猛交XXXX免费看| 亚洲午夜片| 日本成人不卡视频| 亚洲中文字幕在线观看| 67194亚洲无码| 日韩高清欧美| 精品国产黑色丝袜高跟鞋| 国产精品免费p区| 国产精品视频猛进猛出| 久久大香香蕉国产免费网站| a级毛片免费网站| 亚洲男人的天堂久久香蕉| 中文字幕在线免费看| 自拍偷拍一区| 美女无遮挡拍拍拍免费视频| 亚洲国产高清精品线久久| 亚洲精品动漫| 中国一级毛片免费观看| 国产精品视频公开费视频| 日本福利视频网站| 伊人成人在线| 精品91视频| 99爱视频精品免视看| 天天色天天综合网| 国产成人禁片在线观看| 欧美日韩资源| 成人国产一区二区三区| 高清无码手机在线观看 | 欧美精品不卡| 久久青青草原亚洲av无码| 久久精品免费国产大片| 在线观看国产网址你懂的| 色婷婷丁香| 一本无码在线观看| 真人免费一级毛片一区二区| 亚洲妓女综合网995久久| 日本欧美午夜| 国产精品林美惠子在线播放| 国产精品一区在线麻豆| 九色91在线视频| 久久亚洲AⅤ无码精品午夜麻豆| 国产成本人片免费a∨短片| 美美女高清毛片视频免费观看| 成人另类稀缺在线观看| 一级毛片视频免费| 久久毛片免费基地| AⅤ色综合久久天堂AV色综合| 国产黄色免费看| 制服丝袜国产精品| 日韩东京热无码人妻| 无码日韩视频| 亚洲天堂网站在线| 亚洲一区国色天香| 2021最新国产精品网站| 国产精品成人久久| 无码网站免费观看| 超级碰免费视频91| 亚洲第一黄片大全| 国产精品手机视频一区二区|