第一篇:算法及其實現(xiàn)教學(xué)設(shè)計
《算法及其實現(xiàn)》教學(xué)設(shè)計
XXXXX中學(xué) XXX
一、教材分析
在前面的章節(jié)已經(jīng)提到,用計算機解決實際問題的過程中,有兩個重要的環(huán)節(jié)——設(shè)計算法、編制和運行程序?qū)崿F(xiàn)算法,所以算法是學(xué)習(xí)程序設(shè)計的前提和依據(jù)。算法是理論知識,具有一定的抽象性,學(xué)生理解起來比較困難,為了不讓學(xué)生害怕后面程序的學(xué)習(xí),在選擇例子的時候降低了難度,都是貼近學(xué)生生活易于理解的例子。上好本章的第一節(jié),對學(xué)生學(xué)習(xí)算法和編程興趣的影響十分重要。
二、學(xué)情分析
該課程的學(xué)習(xí)者是高中一年級的學(xué)生,這個階段的學(xué)生已具有接受抽象事物的能力、同時邏輯思維、好奇心強,對新鮮事物和新理念、新知識興趣濃厚,但是怕吃苦,遇到難題,易退縮。雖然通過初中信息技術(shù)課程的學(xué)習(xí),掌握了一定的利用計算機解決問題的知識,然而大多數(shù)的同學(xué)對算法還是比較陌生的?;谶@樣的情況,在教學(xué)中,要盡量的把抽象的問題具體話,和生活中的事例緊密聯(lián)系,化難為易,學(xué)以致用,激發(fā)學(xué)生的學(xué)習(xí)興趣和動機,使同學(xué)們在快樂中學(xué)習(xí)算法及程序設(shè)計。
三、教學(xué)媒體 a)b)多媒體網(wǎng)絡(luò)教室
教材、教學(xué)幻燈片、圖片。
四、教學(xué)方法
主要以任務(wù)驅(qū)動法、小組討論為主,講授為輔。充分調(diào)動學(xué)生的主觀能動性,已達(dá)到主動式學(xué)習(xí)、探究性學(xué)習(xí)和創(chuàng)新性學(xué)習(xí)。
五、教學(xué)目標(biāo)
1、知識目標(biāo)
(1)理解算法的含義,能從生活中準(zhǔn)確舉例說明使用算法的例子;
(2)了解算法的表示形式,有自然語言、偽代碼、流程圖;(3)掌握用流程圖描述算法的方法。
2、技能目標(biāo)
(1)培養(yǎng)學(xué)生分析、解決問題的能力;(2)會用流程圖描述算法,解決問題。
3、情感目標(biāo)
(1)讓學(xué)生明白解決任何問題有應(yīng)具有清晰地思路和步驟;
(2)通過對算法的設(shè)計,提高學(xué)生對算法的興趣,培養(yǎng)學(xué)生的邏輯思維能力。
重點:1.如何分析問題、設(shè)計算法。2.流程圖的畫法。
難點:1.如何分析問題、設(shè)計算法。2.流程圖的畫法。
六、教學(xué)流程
(一)情景導(dǎo)入,引入新課(5分鐘)
【教師活動】
(1)教師提出一個有趣的問題:一個農(nóng)夫帶著一條狼、一頭山羊和一籃蔬菜要過河,但只有一條小船.乘船時,農(nóng)夫只能帶一樣?xùn)|西.當(dāng)農(nóng)夫在場的時候,這三樣?xùn)|西相安無事.一旦農(nóng)夫不在,狼會吃羊,羊會吃菜。
(2)要求學(xué)生分組討論設(shè)計一個方案,使農(nóng)夫能安全地將這三樣?xùn)|西帶過河.。
【學(xué)生活動】
(1)學(xué)生積極思考討論問題。(2)派小組代表發(fā)表解決方案。
【教師活動】
(1)口述總結(jié)學(xué)生提出的方案
第一步,農(nóng)夫帶羊過河.第二步,農(nóng)夫獨自回來.第三步,農(nóng)夫帶狼過河.第四步,農(nóng)夫帶羊回來.第五步,農(nóng)夫帶蔬菜過河.第六步,農(nóng)夫獨自回來.第七步,農(nóng)夫帶羊過河
當(dāng)然,也有可能學(xué)生會提出第二種方案: 第一步,農(nóng)夫帶羊過河.第二步, 農(nóng)夫獨自回來.第三步,農(nóng)夫帶蔬菜過河.第四步,農(nóng)夫帶羊回來.第五步,農(nóng)夫帶狼過河.第六步,農(nóng)夫獨自回來.第七步,農(nóng)夫帶羊過河.設(shè)計意圖:通過這個有趣的問題,在學(xué)生的討論中已無形的接觸到算法,讓同學(xué)對算法有一個初步的了解。
(二)循序漸進(jìn),引出算法(8分鐘)
【 教師活動】
教師簡單介紹算法的定義,即“算法”就是是解決方法的精確描述。從廣義的角度來看,生活中到處存在著算法,樂譜是樂隊演奏的算法,菜譜是廚師做菜的算法,廣播操圖解是廣播體操的算法。
(2)讓同學(xué)談?wù)勆钪?,你還遇到什么樣的算法。【學(xué)生活動】
(1)認(rèn)真聽講,做好筆記(2)積極發(fā)言。
設(shè)計意圖:為了使抽象的知識更加具體化,聯(lián)系生活中的實例,讓學(xué)生從生活中發(fā)現(xiàn)知識,易于理解后面的知識。
(三)逐步深入,突破重、難點(15分鐘)【 教師活動】
(1)教師講述算法的表現(xiàn)形式——自然語言、偽代碼、流程圖。(2)結(jié)合PPT,講述流程中常用的幾種符號。
? 處理框(矩形框),表示一般的處理功能。
? 判斷框(菱形框),表示對一個給定的條件進(jìn)行判斷,根據(jù)給定的條件是否成立決定如何執(zhí)行其后的操作。它有一個入口,二個出口。
? 輸入輸出框(平行四邊形框)。
? 起止框(圓弧形框),表示流程開始或結(jié)束。
? 連接點(圓圈),用于將畫在不同地方的流程線連接起來。如圖中有兩個以1標(biāo)志的連接點(在連接點圈中寫上“l(fā)”)則表示這兩個點是連接在一起的,相當(dāng)于一個點一樣。用連接點,可以避免流程線的交叉或過長,使流程圖清晰。
? 流程線(指向線),表示流程的路徑和方向。
? 注釋框, 是為了對流程圖中某些框的操作做必要的補充說明,以幫助閱讀流程圖的人更好地理解流程圖的作用。它不是流程圖中必要的部分,不反映流程和操作。
(3)引導(dǎo)學(xué)生看課件中學(xué)校上體育課的流程圖?!?學(xué)生活動】
(1)認(rèn)真聽課,了解算法的表現(xiàn)形式。(2)了解流程圖的畫法。
設(shè)計意圖:這部分的知識是本堂課的重點和難點,讓學(xué)生自主學(xué)習(xí)課本,掌握知識,提高學(xué)生的總結(jié)、歸納、表達(dá)對于他們的學(xué)習(xí)很重要。
(四)層層展開、鞏固新知識(8分鐘)
【教師活動】
(1)引導(dǎo)學(xué)生思考課件中提出的問題(2)教師分析課件中的流程圖得出最終結(jié)果
【學(xué)生活動】
(1)積極討論思考,回答教師的提問。
設(shè)計意圖:通過練習(xí),鞏固學(xué)生對新知識的掌握,同時通過學(xué)生的回答,老師對學(xué)生知識的掌握情況有所了解。
(五)課堂總結(jié)(3分鐘)【教師活動】
(1)老師以提問的方式,什么是算法,算法的表現(xiàn)形式,自然語言和流程圖的對比。
【學(xué)生活動】
(1)積極回答教師的提問,回顧本節(jié)的知識點。設(shè)計意圖:進(jìn)一步鞏固加深學(xué)生對本堂課知識的理解。
(六)布置課后作業(yè)(1分鐘)【 教師活動】
給出三個數(shù)a、b、c,請問如何判斷出最大數(shù)?并畫出流程圖 【學(xué)生活動】(1)課后認(rèn)真完成。
設(shè)計意圖:進(jìn)一步鞏固學(xué)生對知識的理解。
第二篇:算法及其實現(xiàn) 教學(xué)設(shè)計(第一課時)
《3.4算法及其實現(xiàn)》教學(xué)設(shè)計(第一課時)
一、設(shè)計思想
隨著新課程改革的深入,信息技術(shù)課程理念發(fā)生了巨大的變化,具體表現(xiàn)為:強調(diào)培養(yǎng)學(xué)生的信息素養(yǎng);為學(xué)生打造終身學(xué)習(xí)的平臺;關(guān)照全體學(xué)生的發(fā)展;強調(diào)培養(yǎng)學(xué)生解決問題的能力,運用信息技術(shù)創(chuàng)新實踐的能力,與人交流合作的能力。新課程要求教師必須改變傳統(tǒng)的“教教材”,要 “用教材去教”,要求教學(xué)模式由以往的“以教師為主體”轉(zhuǎn)變到“以學(xué)生為主體”,提倡“任務(wù)型”教學(xué),關(guān)注學(xué)生的情感態(tài)度價值觀。
本節(jié)課我根據(jù)新課標(biāo),結(jié)合學(xué)生的特點對教材的內(nèi)容進(jìn)行了深入的挖掘和思考,創(chuàng)作了學(xué)生學(xué)案,創(chuàng)設(shè)豐富的教學(xué)情境,提供多樣的學(xué)習(xí)資源。教學(xué)以生活中的實際問題和有趣故事作為任務(wù)驅(qū)動,讓學(xué)生采用自主、合作、探究、體驗等學(xué)習(xí)方式,通過意義建構(gòu)獲得新知,充分體現(xiàn)學(xué)生的主體地位。
二、教材分析
《算法及其實現(xiàn)》是普通高中課程標(biāo)準(zhǔn)實驗教科書——《信息技術(shù)基礎(chǔ)(浙江教育出版社)》的第三章第四節(jié)內(nèi)容,該教材是按照高中信息技術(shù)課程標(biāo)準(zhǔn)編寫的實驗教材。通過學(xué)習(xí)本節(jié)內(nèi)容可以達(dá)到“初步掌握用計算機進(jìn)行信息處理的幾種基本方法,認(rèn)識其工作過程與基本特征”的課程標(biāo)準(zhǔn)要求。
本節(jié)內(nèi)容是第三章的難點,介紹了算法的基本概念和算法的表示方法。相比較前三節(jié)的內(nèi)容要抽象的多,二本節(jié)又是第四節(jié)的第一課時,是第二課時《程序設(shè)計實例》的知識基礎(chǔ),起到承上啟下的作用。本節(jié)的學(xué)習(xí)重點是算法的概念、特點及表示方法;難點是用流程圖描述算法。
三、學(xué)情分析
從思維品質(zhì)上來說:高一學(xué)生已有使用計算機的感性經(jīng)驗,已經(jīng)可以 超越簡單的技術(shù)操作,具備了接受更高層面文化的能力。學(xué)生的思維能力已接近成人,他們有旺盛的求知欲,較高的學(xué)習(xí)自覺性,并具備一定的自學(xué)能力,已具有較強抽象思維和邏輯推理能力。
從知識儲備上來說:經(jīng)過前面的學(xué)習(xí),學(xué)生已經(jīng)可以使用計算機處理一些實際問題,例如:利用計算機對文字、圖片、多媒體信息的處理,但是學(xué)生還不了解了使用計算機解決問題的一般過程和解決方法,以及以何種方式來表示。
四、教學(xué)目標(biāo)
(一)、知識與技能:
1、理解算法的含義;
2、了解算法的特點及表示方法;
3、學(xué)會用流程圖表示算法。
(二)、過程與方法:
1、能初步利用算法解決簡單的問題;
2、培養(yǎng)學(xué)生的理論聯(lián)系實際能力和動手操作能力。
(三)、情感態(tài)度與價值觀:
1、培養(yǎng)學(xué)生學(xué)習(xí)信息技術(shù)課程的興趣;
2、培養(yǎng)學(xué)生主動探究和合作學(xué)習(xí)的意識和能力。
五、重點難點
教學(xué)重點:算法的含義、及表示方法 教學(xué)難點:用流程圖描述算法
六、教學(xué)策略與方法
1、學(xué)案導(dǎo)學(xué),自主學(xué)習(xí)
2、問題導(dǎo)入,激情引趣。
3、創(chuàng)設(shè)情境,任務(wù)驅(qū)動。
4、合作探究,交流提高。
七、課前準(zhǔn)備
1.教材、教材配套的教師用書、配套光盤 2.學(xué)生學(xué)案 3.教學(xué)課件
4、多媒體教室/大屏幕投影儀
5、將學(xué)生分為4人一組,每組都有優(yōu)、中、差三個不同層次的學(xué)生。
八、教學(xué)過程
(一)新課導(dǎo)入
同學(xué)們,上節(jié)課我們講了聲音和視頻處理,都是要利用計算機內(nèi)存儲的應(yīng)用軟件來解決處理問題,同樣,像我們之前學(xué)習(xí)的文字處理軟件、表格處理軟件、多媒體報告處理軟件也都是已經(jīng)編制好的軟件幫助我們處理信息。
但是,也有許多問題是沒有現(xiàn)成的軟件可以借用的,因此,我們必須根據(jù)不同的問題和工作要求,設(shè)計針對特定問題的解題步驟,編制專用的軟件來解決這些問題。
今天開始我們一起來看看如何實際編寫一個簡單的程序來解決一個特定的問題。
(二)新課教學(xué)
1、算法
(1)師生共同完成游戲
師:首先,我們一起來做一個農(nóng)夫過河的游戲(游戲內(nèi)容分別用文字和flash動畫顯示在屏幕上),請同學(xué)們按小組討論,幫農(nóng)夫設(shè)計一個具體的步驟,安全地將這三樣?xùn)|西帶過河。
生:分組討論過河的方案,最終得出了成功的方案。
師:讓小組代表與全班同學(xué)分享各自的方案,評價各組的方案進(jìn)而得出正確的步驟并總結(jié):
同學(xué)們,這6個步驟是這個游戲中是不可缺少的動作,否則就不能完成總體目標(biāo),使問題獲得圓滿解決。因此,在解決某一問題時我們要把各個步驟都精確的考慮到。
上面這個例子中的解決問題的步驟其實就是編制程序的基礎(chǔ):算法。設(shè)計意圖:游戲激發(fā)學(xué)生的興趣,讓學(xué)生在完成游戲中已經(jīng)編出了一個解決問題的算法,讓學(xué)生輕松進(jìn)入新知識的學(xué)習(xí)。
(2)學(xué)生閱讀,完成學(xué)案
師:現(xiàn)在請大家閱讀課本3.4.1第一二自然段,完成學(xué)案1、2、3題。學(xué)生:閱讀課本制定內(nèi)容,完成學(xué)案。
學(xué)生完成學(xué)案時,教師要走進(jìn)學(xué)生,觀察學(xué)生的完成情況。完成后,學(xué)生要對學(xué)案的完成做簡要展示,教師要對學(xué)生的完成情況作簡要總結(jié)。
師:大家完成的都很好,請同學(xué)們告訴我有那些生活中算法的實例呢? 生:回答(多樣)
師:大家說的都很好,樂譜、菜譜、廣播體操圖解、搬家的次序等等都是生活中的算法,就拿“搬家”來說,是不是設(shè)計的次序不一樣,搬家的效果就不一樣呢?也就是說,解決同一個問題,會有很多種不同的算法,那么什么樣的算法更好一點呢?
現(xiàn)在請大家閱讀課本3.4.1剩余部分,完成學(xué)案4題。學(xué)生完成學(xué)案時教師引導(dǎo):
師:方法甲和其他兩個方案比較優(yōu)秀在哪里?節(jié)省了什么?
我們在設(shè)計算法時應(yīng)如何做呢? 生:回答
設(shè)計意圖:以學(xué)案的形式給學(xué)生一個一個的任務(wù),讓學(xué)生自己去嘗試、探究,然后在教師的指導(dǎo)下進(jìn)行小結(jié),接下來再嘗試,這樣就形成螺旋式的知識學(xué)習(xí)和能力提高過程。學(xué)生的主動和教師的主導(dǎo)都得到充分的發(fā)揮。在本節(jié)課的教學(xué)設(shè)計中,教師重視的不應(yīng)該是結(jié)果,而是過程。
2、算法的表示
(1)常見算法的表示形式
師:大家已經(jīng)知道我們可以編寫算法來解決生活中的問題,那么我們可以用什么形式來表示算法呢?請大家閱讀課本3.4.2第1自然段,完成學(xué)案5題。
完成后要挑選學(xué)生回答。(2)流程圖
師:通過大家的閱讀和總結(jié),流程圖是形象直觀,便于掌握的描述算法的形式,因此我們需要認(rèn)真學(xué)習(xí)如何用流程圖描述算法,現(xiàn)在請大家閱讀課本3.4.2中2、3、4自然段,完成學(xué)案第6題。
生:完成學(xué)案第6題。(3)用流程圖描述算法
師:我們已經(jīng)知道了流程圖的功能,現(xiàn)在我們就嘗試著用流程圖來表示算法,需要注意的是在用流程圖描述算法之前必須能能夠用自然語言描述算法,否則也無法用流程圖來描述。
操作一:將大象裝冰箱
操作一由老師講解演示,學(xué)生聽講。
操作二:學(xué)校上體育課,一般在操場上課,遇到下雨或下雪,改到室內(nèi)上課,用流程圖表示。
操作二由學(xué)生獨立完成。
生:聽老師講解完操作一之后,完成學(xué)案的第7、8題。
操作三:對任意輸入的三個整數(shù)x,y和z,找出并輸出其中的最大值。
操作三老師講解。
師:操作三用自然語言描述: 1.輸入變量x,y,z
2.比較x,y。如果x>y,則x存入以max命名的存儲單元中;否則,y存入max 3.比較z和max。如果z>max,則將z存入max。4.輸出max。用流程圖描述:
課堂練習(xí):對任意輸入的三個整數(shù)x,y和z,找出并輸出其中的最小值。用流程圖表示。
聽老師講解后,完成學(xué)案第9、10題。
設(shè)計意圖:本環(huán)節(jié)設(shè)計是充分調(diào)動學(xué)生的積極性和主動性。教學(xué)中不斷的給學(xué)生新的任務(wù),讓學(xué)生主動學(xué)習(xí),增強技能,在練習(xí)設(shè)計中注意難度的梯度,讓學(xué)生不斷的戰(zhàn)勝困難,而不是一下就被困難嚇倒。最后,通過不斷的練習(xí),讓學(xué)生真正掌握知識和技能。
(三)課堂小結(jié)
本節(jié)課學(xué)習(xí)了算法的定義、特征、優(yōu)化和算法的表示方式,并著重學(xué)習(xí)了如何用流程圖表示算法。請同學(xué)們在課后完成學(xué)案第11、12題,并在小組之間交流。
九、課后作業(yè)
1、完成教材P71頁上的“練一練”中的第(1)、(2)兩題。
2、觀察猜數(shù)字游戲,嘗試畫出猜數(shù)字游戲算法的流程圖。
設(shè)計意圖:課后作業(yè)分為課內(nèi)作業(yè)和課外拓展兩部分,讓不同層次的學(xué)生分別完成。課外拓展部分的算法比較復(fù)雜,涉及到了循環(huán)結(jié)構(gòu),可讓學(xué)生在完成思索的過程中預(yù)習(xí)第二課時的內(nèi)容。
十、學(xué)生學(xué)案(另附)
【問題研討】
1、信息技術(shù)教育,采用任務(wù)驅(qū)動的形式,圍繞一個能激起學(xué)生濃厚興趣的主題展開教學(xué),以學(xué)生的探究過程作為學(xué)習(xí)載體,較之與傳統(tǒng)的信息技術(shù)課教學(xué),以單純的計算機知識和計算機操作作為教學(xué)內(nèi)容,更能激發(fā)學(xué)生強烈的學(xué)習(xí)欲望。
2、采用學(xué)案導(dǎo)學(xué)的方式,學(xué)生手中都有學(xué)案,方便了學(xué)習(xí),梳理了思路,提高了效率,更主要的是真正實現(xiàn)了學(xué)生主動學(xué)習(xí),教師只是引導(dǎo)的教學(xué)模式,更加貼近新課程改革的要求。
3、以小組協(xié)作學(xué)習(xí)方式展開教學(xué),使學(xué)生的知識、技能的獲取變成了多渠道。學(xué)生相互之間的只言片語,遠(yuǎn)勝于教師長篇大論的講解和繁瑣的演示操作,大大提高學(xué)生的學(xué)習(xí)效率和學(xué)習(xí)興趣。同時高、中、低不同層次的學(xué)生組成小組,充分利用優(yōu)秀學(xué)生資源,進(jìn)行同伴互助,縮小生生間的差距,改變兩極分化的現(xiàn)狀。同時也減少教師的課堂工作量,避免了很多學(xué)生同時提問教師忙不過來的尷尬局面。
4、自主探究的學(xué)習(xí)方式,要求學(xué)生具有一定的知識準(zhǔn)備,并不適合于所有內(nèi)容的教學(xué)。當(dāng)學(xué)生對所要學(xué)習(xí)的知識毫無所知時,讓學(xué)生去自主探究要花費很多的時間和精力,大大降低了學(xué)生的學(xué)習(xí)效率,由于受課時限制應(yīng)有選擇的采用。
第三篇:《對分查找及其算法實現(xiàn)》教學(xué)設(shè)計
《對分查找及其算法實現(xiàn)》教學(xué)設(shè)計
湖北省巴東縣第一高級中學(xué) 劉少銀
一、教材學(xué)情分析
本次課是浙江版高中信息技術(shù)選修教材《算法與程序設(shè)計》第二章算法實例第四節(jié)查找中的一部分內(nèi)容。由于教材體系不適合校本實際,我們在教學(xué)過程中對教材體系作了如下調(diào)整。
講授順序:第一章 算法和算法的表示、第三章 面向?qū)ο蟮某绦蛟O(shè)計的基本知識、第四章 VB程序設(shè)計初步、第二章算法實例,第五章 算法實例的程序?qū)崿F(xiàn)穿插在相關(guān)內(nèi)容教學(xué)中完成。
因此在前期教學(xué)中學(xué)生已經(jīng)初步掌握了算法基礎(chǔ)及算法表示,VB程序設(shè)計初步等。本次課是讓學(xué)生掌握對分查找的思想及算法的實現(xiàn)。
二、教學(xué)目標(biāo)
知識與技能:理解對分查找的基本含義、方法,理解并能畫出對分查找的流程圖;
過程與方法:通過案例分析、直觀觀察,增強分析問題和解決問題的能力;
情感、態(tài)度與價值觀:感受信息技術(shù)與現(xiàn)實生活的關(guān)聯(lián),激發(fā)對信息技術(shù)學(xué)科的求知欲,培養(yǎng)主動學(xué)習(xí)和使用信息技術(shù)的意識;養(yǎng)成科學(xué)的學(xué)習(xí)態(tài)度,不迷信書本、不迷信權(quán)威。
三、教學(xué)重難點
教學(xué)重點:對分查找的基本方法及注意事項;
教學(xué)難點:對分查找算法的實現(xiàn)。
四、教學(xué)策略
·以“猜數(shù)”游戲?qū)?,引入對分查找的概念?/p>
·師生討論、生生討論、生生互助;分析、歸納、總結(jié),理解并掌握對分查找的基本思想;
·采用分類研究、分享成果、課后練習(xí)等學(xué)習(xí)方法,理解對分查找方法及基本主要特征;
·采用自然評價、師生評價、生生評價等形式對學(xué)習(xí)進(jìn)行過程性評價。
五、教學(xué)過程
1.游戲激趣,釋疑對分查找
(三個程序圖片)
(初始界面)(人工猜數(shù)界面)(程序猜數(shù)界面)
準(zhǔn)備:幾張白紙,一支記號筆。啟動猜數(shù)程序。
師:同學(xué)們好!大家看到前面的程序了嗎?它是一個什么程序呢?
同學(xué):猜數(shù)游戲程序。
師:對,這是我用VB針對李泳主持的“幸運52”中猜商品價格環(huán)節(jié)開發(fā)的一款程序,我先來說說針對主持人的部分:當(dāng)李泳宣布商品的價格范圍時,比如10000元內(nèi),猜商品價格的人就可以在猜數(shù)范圍欄起始欄填上“0”,終至欄填“10000”,然后再將鼠標(biāo)移到猜數(shù)欄中單擊,程序即提示:“準(zhǔn)備!倒計時30秒”,當(dāng)單擊提示處,猜價格倒計時開始,猜價格人即可在猜數(shù)欄上填上所猜價格的數(shù)值,然后根據(jù)主持人的提示,選擇“不對”重新填寫商品價格或選擇“正確”讓所猜價格在“猜得結(jié)果”欄內(nèi)顯示正確結(jié)果并停止計時,提示欄中即顯示“您猜了M次,對了,恭喜您”。
師:大家覺得程序光有這樣的功能神奇嗎?
生:不神奇。
師:對,我也是這樣認(rèn)為的。這個程序神奇的地方在它能幫助猜商品價格人在規(guī)定的時間內(nèi),根據(jù)主持人的提示準(zhǔn)確地猜出商品的價格,而且猜中率100%,所以現(xiàn)在“幸運52”停播了,大家知道為什么嗎?
生:不知道。
師:就是因為我開發(fā)了這個程序呀!
生:(有的說信,有的抱著懷疑的態(tài)度不吭聲,也有說不信的)
師:有同學(xué)愿意上來試試嗎?
師:你在紙上寫下你的數(shù)值范圍和要猜的數(shù),然后給大家看一下,別說出來,別讓電腦聽見了。
師:好,操作程序讓程序幫忙把寫的數(shù)找出來。
(程序找到正確的數(shù))
師:神奇吧。
師:還有那位同學(xué)愿意試一下。
師:同樣,你還是先寫下要猜的數(shù)和范圍100~200,這次我們不讓大家看到他要猜的數(shù),請大家?guī)兔τ浵鲁绦蛎看纬霈F(xiàn)的數(shù)字。
師:電腦程序也猜出了正確結(jié)果:132。
程序給出的數(shù)字是:
第一個數(shù)是:150
第二個數(shù)是:12
5第三個數(shù)是:137
第四個數(shù)是:1
31第五個數(shù)是:13
4最后是:13
2大家能看出什么規(guī)律了嗎?
生:看不出
師:單純從這幾個數(shù)當(dāng)中是看不出什么規(guī)律,現(xiàn)在我們依次把這些數(shù)放到數(shù)軸上,再看一下,大家看能找出什么規(guī)律呢?
同學(xué)發(fā)言??
師:大家認(rèn)為他說的怎樣?為什么不鼓掌呀!
師:對,正如剛才的同學(xué)說的那樣,程序是在給定范圍內(nèi)依次找中點方法來找到我們要找的最終數(shù)值,這就是我們今天要討論的一種新的查找方法:對分查找。
師:我們剛才的游戲中的數(shù)列是序的嗎?
生:是有序的,升序排列的。
師:如果是降序能用對分查找方式查找嗎?
生:能。
師:大家想一想,如果我們打亂數(shù)據(jù)的排序順序,在沒有排序的數(shù)列中能否用對分查找的方法,找到我們想找到的數(shù)據(jù)?
同學(xué):不能。
師:對,這就是對分查找方法的一個特征,或稱為條件。因為我們是根據(jù)數(shù)據(jù)的大小找到它在數(shù)列中的位置。
【設(shè)計意圖】通過游戲和對程序給出數(shù)值在數(shù)軸上的分布分析,讓學(xué)生初步理解和掌握對分查找的方法及前提條件,為后一階段對分查找算法的實現(xiàn)作好鋪墊。
2.分析實例,實現(xiàn)對分查找算法
師:下面我們一起來看一下程序是怎樣一步一步的給出以上數(shù)據(jù)并最終找到“132”這個數(shù)的。
師:首先在100至200之間找中點,然后再用中點值150與所要找的數(shù)132比較,得出的結(jié)論是所要找的數(shù)在100至150之間的數(shù),一下數(shù)值的范圍就縮小了一半,終止變量j的值就由200變成了150;第二次查找時,程序就給出100至150的中點值125;當(dāng)程序進(jìn)行第三次查找時,起始變量i的值就被修改為125,它們的中點值應(yīng)該是:(125+150)/2=137.5。有小數(shù)了,怎么辦?
生:??(有點茫然)
師:對于小數(shù),程序可以繼續(xù)查找,但有可能要增加查找次數(shù)。為了保證在整數(shù)范圍內(nèi)查找,我們就要對含小數(shù)的中間值進(jìn)行處理:取整。大家還記得我們學(xué)過VB的取整函數(shù)嗎?
生:int。
師:對。即int(137.5),結(jié)果是多少?
生:137。
師:所以我們查找i到j(luò)范圍內(nèi)的中點值的表達(dá)式應(yīng)該為:m=int((i+j)/2)。
師:依次類推,程序會依次給出131、134、132即找到了要找的數(shù)。
師:請同學(xué)們根據(jù)算法逐步求精的原則在下面畫出流程圖。
(展示如下流程圖,然后請同學(xué)完成完善對分查找的算法流程圖)
流程圖補充完善后的結(jié)果:
【設(shè)計意圖】通過對程序給出中間數(shù)的分析,幫助學(xué)生理解對分查找算法實現(xiàn)的方法,為學(xué)生順利完成對分查找算法流程圖給予理論與實踐上的支持。
3.推出特例,完善對分查找算法
師:同學(xué)們,剛才我們完成的對分查找的流程圖;下面請同學(xué)們用剛才的查找方法分析一下在199至200范圍內(nèi)要找200這個數(shù),能找到嗎?為什么?如何解決這個問題?
(將教室內(nèi)學(xué)生按座位分成若干組,進(jìn)行討論。每個組推選一名小 組長,完成后作小組發(fā)言)
??
(每一小組完成發(fā)言后,老師或點評,或讓學(xué)生點評)
師:根據(jù)剛才同學(xué)的討論分析,那我們先前給出的流程圖就有了一些缺陷,怎么修改?
(在同學(xué)們的發(fā)言聲中,修改完善流程圖)
修改后的流程圖如下:
【設(shè)計意圖】給出特例,讓學(xué)生相互討論、互助學(xué)習(xí),歸納總結(jié)出上述流程圖中出現(xiàn)問題的癥結(jié)所在,并給出正確的流程圖;由此可讓學(xué)生體驗到科學(xué)探究的方法,從而培養(yǎng)學(xué)生的科學(xué)態(tài)度與探索精神。
六、課后作業(yè)
師:1.在前面的取整中我們用了取整函數(shù)int,大家想一想能不能用四舍五入函數(shù)處理?如果用四舍五入函數(shù)(round)處理,流程圖又將怎樣修改?
2.請看教材P40-43,比較我們所給出的流程圖與教材上的流程圖有什么差異?兩個流程圖最后結(jié)果是否一致,那個流程圖的結(jié)果有問題,問題是怎么造成的?請寫出一篇500—800字的小論文。
(提示:認(rèn)真閱讀教材P40至P43內(nèi)容,并分析教材中所給算法的邏輯錯誤)
作業(yè)提交方式:電子郵件(校內(nèi)、校外均可)
郵件名稱:登分號+姓名+論文題目
作業(yè)提交地址:bdxyz@qq.com
【設(shè)計意圖】作業(yè)(1)擴(kuò)充課堂內(nèi)容,豐富學(xué)生知識面,豐富學(xué)生分別學(xué)習(xí)內(nèi)容;作業(yè)(2)通過兩個流程圖之間差異性比較,引導(dǎo)學(xué)生判別書本上所給出流程圖的邏輯錯誤,從而培養(yǎng)學(xué)生:1.科學(xué)的學(xué)習(xí)態(tài)度和精神,不迷信教材、不迷信權(quán)威;2.運用論文等形式來表達(dá)自己觀點;3.通過學(xué)生自己的分析、探索,找出教材中的錯誤。
七、教學(xué)反思
整節(jié)課充滿了笑聲和掌聲,課堂氣氛活躍,學(xué)生參與度高。老師的主導(dǎo)作用和學(xué)生的主體地位得到了充分的體現(xiàn)。學(xué)生在師生互動、生生討論、生生互助中比較好地掌握了對分查找的思想和算法實現(xiàn),教學(xué)效果好。但由于時間關(guān)系,沒有將程序的源代碼展示給學(xué)生,讓學(xué)生有一種意猶未盡的感覺是本次課的一個缺憾。
第四篇:算法教學(xué)設(shè)計
3.4算法及其表示 智能吸塵器算法簡單分析
【教材分析】 本節(jié)教材的地位、作用等分析。
本節(jié)教材位于高中信息技術(shù)必修模塊第三章中:“算法及其實現(xiàn)”部分內(nèi)容,本節(jié)課的學(xué)習(xí)目的是使學(xué)生體驗算法思想,了解算法和程序設(shè)計在解決問題過程中的地位和作用;體驗信息技術(shù)中算法的魅力,為學(xué)生選修算法模塊奠定基礎(chǔ)。
【學(xué)情分析】
算法是我們信息技術(shù)基礎(chǔ)模塊的最難的一塊內(nèi)容,課時又少,只有兩課時,如果初中信息技術(shù)正常開展,那么這個內(nèi)容也容易開展。
【教學(xué)目標(biāo)】
1.知識與技能
理解算法的含義,體會算法在程序設(shè)計中的地位; 培養(yǎng)用計算機編程解決現(xiàn)實問題的能力。2.過程與方法
能通過觀察吸塵器的工作來分析其算法,培養(yǎng)學(xué)生用程序設(shè)計的思想來思考產(chǎn)品。3.情感態(tài)度與價值觀
引導(dǎo)學(xué)生了解程序設(shè)計的更多知識,體驗信息技術(shù)的強大魅力; 激發(fā)學(xué)生對計算機編程解決現(xiàn)實問題的學(xué)習(xí)欲望,提高學(xué)習(xí)興趣。滲透人文教育,懂得感恩。
【重點難點】
教學(xué)重點:算法的特征;算法的表示 教學(xué)難點:對算法的理解,流程圖
【設(shè)計思想】
新課標(biāo)強調(diào)要“培養(yǎng)解決問題的能力,倡導(dǎo)運用信息技術(shù)進(jìn)行創(chuàng)新實踐”,以前教學(xué)中我一直從面到點,先講算法的定義和特點,再舉例,效果不是很好,學(xué)生印象不深,往往到學(xué)期結(jié)束的時候,對算法印象全無。
因此,這次在設(shè)計本節(jié)內(nèi)容的時候,在選擇實例的時候,我從兩點考慮:一是生活化,選擇的例子盡可能貼近生活,既要達(dá)到吸引學(xué)生的目的,又能體現(xiàn)技術(shù)的真實內(nèi)涵(現(xiàn)在的學(xué)生,生活自理能力太差了);二是通過把抽象的問題分析成為具體步驟或方法,從而形成算法,讓學(xué)生理解計算機解決問題的基本過程。
我在選擇實例的時候,盡量讓這個例子能貫穿整堂課,把一個問題分析透,印象會深刻。
【教學(xué)流程】
導(dǎo)入
師:喜歡干家務(wù)嗎? 生:不喜歡
師:可是有一個人就是無怨無悔的做著家務(wù)(滲透人文教育,懂得感恩)生:誰?
師:“馬大嫂”,你們認(rèn)識“馬大嫂”嗎?每個家庭都有。生:領(lǐng)悟
師: “馬大嫂”在我們同學(xué)們的年紀(jì)時,也是不喜歡干家務(wù)的,是什么讓他們無怨無悔的干著家務(wù)?作為他們的孩子,我們有沒有想過替他們分擔(dān)一點?或者當(dāng)我們長到“馬大嫂”的年齡,我們能不能讓家庭生活輕松一些?
生:討論
師:家庭的智能化腳步離我們越來越近,我們的生活里隨處可見,比如有定時功能的家電,洗衣機、洗碗機,今天我給大家推薦一款“買汰掃”的掃:智能吸塵器。(引導(dǎo)學(xué)生用計算機編程來解決現(xiàn)實問題)
首先聲明,我不是搞推銷的,而是帶領(lǐng)大家去設(shè)計生產(chǎn)產(chǎn)品的。今天我們一起來分析、設(shè)計一款智能吸塵器。
首先,我們分析一下原始的手工操作吸塵器的工作需要幾步? 新課(先把復(fù)雜的問題簡單化,得出大的方向,然后逐步細(xì)化)生:三步,打開電源、開始工作、關(guān)閉電源
師:看來你們都是宋丹丹的徒弟,其實這也是我們用計算機解決實際問題的思維:先設(shè)計算法、再編制程序來實現(xiàn)算法。
師:什么是算法呢?算法是解決問題的方法和步驟,同學(xué)們用的是自然語言描述的算法,我是用流程圖來描述算法。
算法描述的方法和步驟應(yīng)該是有限的,有開必有關(guān);有Begin必有End;
同學(xué)們是不是有被忽悠的感覺?有,就說明了我們的同學(xué)想的更遠(yuǎn)了,是啊,我這個算什么算法,跟本沒解決什么問題,對了,算法還有一個定義,解題方法的精確描述,我這個算法的步驟有了,但不夠精確描述,所以我們要自頂向下,逐步求精。師:你們說哪個步驟需要細(xì)化? 生:第二步
師:那你們覺得吸塵器要體現(xiàn)智能,應(yīng)該從哪些方面考慮? 生:討論
歸結(jié)你們的觀點,主要有三個:設(shè)定清潔路線模塊,躲避障礙物模塊,自動充電程序 設(shè)定清潔路線模塊
師:你們拖過地嗎?如果讓你來拖地,你會選擇怎樣的路線既能減少重復(fù)路線,又能全部覆蓋? 好,我們模擬一下,(用flash 規(guī)定幾個相同的區(qū)域,然后計時擦除)把橡皮擦當(dāng)成我們的吸塵器,擦除前景顏色并計時,……通過大家的實踐,我們可以看出幾種方案比較科學(xué),通過這個試驗,我們知道解決問題的方法有很多,生活中也一樣,關(guān)鍵是要選擇合適的一種,達(dá)到既快又好.這是我們在最優(yōu)環(huán)境下的情況,沒有考慮實際情況。我們看看具體的設(shè)計
前面同學(xué)們提到躲避障礙物是設(shè)計的關(guān)鍵。躲避障礙物模塊
師:躲避障礙物模塊是體現(xiàn)吸塵器智能的關(guān)鍵一點,我們先分析碰到墻壁怎么處理,只要碰到墻壁能處理,其他的是不是也是一個道理?
現(xiàn)在我請同學(xué)們描述一下碰到墻壁這個算法。
真了不起,你們用自然語言描述了這個算法,我習(xí)慣用流程圖來描述。請看我的算法
這個算法同樣比較粗糙,我們一起把它修正一下,首先要確定哪些地方需要細(xì)化,對了,是怎樣判斷“有沒有碰到墻壁?”,這是核心,你們認(rèn)為怎樣判斷好?請大家在紙上設(shè)計設(shè)計
還有沒有其它需要修正的?對了,怎樣“轉(zhuǎn)變方向”也要細(xì)化,你們認(rèn)為怎樣改變方向好?
就這個流程圖本身,還有什么地方需要修正的嗎?Y和N線路里有相同的語句,我們可以把
它提出來,放在合并后的線路中.好,我們把經(jīng)過大家修改后的算法稱為智能清掃模塊
自動充電程序
我們還少了一個關(guān)鍵模塊,地沒掃完,電沒了怎么辦?
現(xiàn)在請同學(xué)們參考智能清掃模塊的流程圖,畫一畫碰到電不足了那一刻怎么處理的算法。
學(xué)生上臺畫流程圖,根據(jù)學(xué)生的流程圖修正,得到循環(huán)結(jié)構(gòu)?;仡櫺〗Y(jié)
現(xiàn)在我們回顧一下我們設(shè)計智能吸塵器的過程:首先我們把復(fù)雜的問題簡單化,設(shè)計了一個三步走的算法,然后,選擇了一個最優(yōu)路線,再設(shè)計了一個具有智能的障礙物躲避模塊和自動充電模塊,在第一個流程圖里我們提出了算法要有開始和結(jié)束,即算法的有限性;最優(yōu)路線里我們得出了最優(yōu)算法;障礙物躲避模塊我們提出了可行性和沒有二義性。
針對以上算法,從開始到結(jié)束都離不開這三種情況,就像我們的生活,有可能一路直行、也有可能碰到分叉口、還有就是回到原路,還有沒有其他的可能?這就如同我們的算法,所以這三種我們就稱為基本結(jié)構(gòu),由這些基本結(jié)構(gòu)組合成大的程序。
拓展
有了算法,程序?qū)崿F(xiàn)就容易了,經(jīng)過我們一起設(shè)計的第一代機器人初具模型,請看我們的作品(展示物體碰撞的動畫),再看看我寫的代碼,一些簡單的語句你們也看得懂,比如我們的核心模塊??
我們用一節(jié)課的時間就已經(jīng)設(shè)計出這樣的產(chǎn)品,如果學(xué)了一本書,讀了四年的大學(xué),你們的產(chǎn)品不知要好到哪里,到時候別忘了給全班同學(xué)發(fā)一個哦。
課外作業(yè)
研究了智能吸塵器,你們有什么啟發(fā)?那么我們就一起設(shè)計一下自己未來的家庭生活吧?
只有想不到的,沒有做不到的。想法高于一切,這個想法就是我們今天講的算法,它不單單存在于我們的計算機行業(yè),生活中處處可見,希望大家做個有心人,好好設(shè)計自己未來的生活,設(shè)計不好,繼續(xù)馬大嫂的生活。
第五篇:分支結(jié)構(gòu)算法的實現(xiàn)教學(xué)設(shè)計
分支結(jié)構(gòu)算法的實現(xiàn)教學(xué)設(shè)計
教學(xué)目標(biāo):
1、知識與技能:理解程序設(shè)計分支結(jié)構(gòu)基本思想;掌握分支結(jié)構(gòu)語句特點
2、過程與方法:學(xué)會用算法分析問題;能夠使用分支結(jié)構(gòu)編寫簡單的程序解決具體問題
3、情感態(tài)度與價值觀:體會用結(jié)構(gòu)化方法解決數(shù)學(xué)問題的便捷性;明確結(jié)構(gòu)化在程序設(shè)計中的重要作用;激勵嘗試使用多種方法解決問題;培養(yǎng)良好的編程習(xí)慣和態(tài)度。
教學(xué)重點:
1、理解程序設(shè)計的分支結(jié)構(gòu)基本思想;
2、熟悉IF語句及掌握IF語句的運用; 教學(xué)難點:
1、分支結(jié)構(gòu)實現(xiàn)語句的格式和功能;
2、編寫簡單的程序的過程;
3、變量的特點。教學(xué)方法:
任務(wù)驅(qū)動法、演示法、講解法、師生互動法 課時安排:一課時 教學(xué)設(shè)計:
1、教學(xué)對象分析
本課適用于高中二年級學(xué)生。這一階段的學(xué)生具備一定的數(shù)學(xué)基礎(chǔ)和具有一定的比較、歸納能力,是一個正處在抽象邏輯思維已初步形成并繼續(xù)發(fā)展的階段。學(xué)習(xí)分支結(jié)構(gòu)程序設(shè)計就是要在這些基礎(chǔ)上,借助具體事務(wù)為載體,了解程序解決問題的條件與辦法。在學(xué)習(xí)本課之前,學(xué)生已經(jīng)掌握pascal程序的編寫與運行方法,了解順序程序結(jié)構(gòu)的執(zhí)行流程。
2、教學(xué)需要分析
本節(jié)課在有多媒體教學(xué)軟件的機房上課。通過再度開發(fā)課程資源(《信息技術(shù)》第四冊第四章第二節(jié)《分支結(jié)構(gòu)算法的實現(xiàn)》)和充分利用學(xué)生發(fā)言的現(xiàn)場事件進(jìn)行有效講授,激發(fā)學(xué)生的探究熱情,努力創(chuàng)設(shè)師生之間的互動場景,使學(xué)生在討論中協(xié)作學(xué)習(xí),在發(fā)言中共享學(xué)習(xí)成果。
本節(jié)課在教師設(shè)疑、講解和學(xué)生分析、討論、發(fā)言等基礎(chǔ)上進(jìn)行的,主要運用的教學(xué)方法是任務(wù)驅(qū)動法。教師講解的過程就是不斷地“否定”前面的結(jié)論,提出新問題(任務(wù))、請同學(xué)們分析問題,提出解決方案,幫助學(xué)生解決問題的過程。
在授課過程中,要根據(jù)課堂現(xiàn)場發(fā)生的事件,隨時調(diào)整教學(xué)內(nèi)容,當(dāng)學(xué)生的討論發(fā)言偏離本節(jié)課的教學(xué)目標(biāo)和內(nèi)容時,要機智處理。
教學(xué)過程: 導(dǎo)入:
1、閱讀句子,總結(jié)規(guī)律。
如果天氣好,就去打球,否則留在家里。
如果答對了,就會得分,否則就會扣分。
如果??就??(否則??)
2、在Pascal中,這種根據(jù)不同的情況轉(zhuǎn)向不同的分支來處理的程序結(jié)構(gòu)就是分支結(jié)構(gòu)。
If??then??(else??)
(學(xué)生討論、發(fā)言,教師引導(dǎo)他們注意if、then、else三個詞,并為這些按條件語句的一般形式劃分部分)
【學(xué)生歸納】
條件語句的一般形式:
格式一:if 條件 then 語句組
格式二:if 條件 then 語句組1 else 語句組2 【教師說明】
格式一功能:當(dāng)條件滿足時執(zhí)行then后語句組,否則跳過此行執(zhí)行下一行。格式二功能:當(dāng)條件滿足時執(zhí)行語句組1,否則執(zhí)行語句組2。例題講解
編寫程序,實現(xiàn)人機對話,電腦顯示“你快樂嗎?(Y OR N)”,如果按“Y”,就回答“我很高興”,否則就回答“太糟了”。
流程圖(略)編寫程序 PROGRAM ex1;VAR a:char;BEGIN Writeln(‘Are you happy?’);Write(‘a(chǎn)=’);Readln(a);IF a=‘y’
THEN writeln(‘I am happy’)ELSE writeln(‘too bad’)END.上機任務(wù)
輸入三個正數(shù),輸出最大數(shù)
(1)分析題目,設(shè)問,引導(dǎo)學(xué)生思考:
在現(xiàn)實中,如果要求三個正數(shù)中的最大數(shù),我們很容易做到;但是,如果有一千個數(shù)或更多的數(shù),就需要較長的時間,而且容易出錯。如果用Pascal按一定的算法編寫程序,就可以準(zhǔn)確地在短時間內(nèi)求出一千個數(shù)或更多數(shù)中的最大數(shù),那我們應(yīng)該如何編寫程序呢?
(2)分析算法:
歸納算法:兩數(shù)分別做比較,用中間量保存當(dāng)前最大數(shù),最后求出最大數(shù)。
①max←0 ②輸入a、b、c的值