亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        游戲程序加工在教學(xué)中的實(shí)現(xiàn)

        2009-04-21 06:44:52李慎東
        關(guān)鍵詞:左移程序代碼子彈

        李慎東

        游戲程序加工,對學(xué)生來說是一個(gè)非常新鮮、感興趣的課題。它不僅可以鍛煉學(xué)生的邏輯思維能力,還能充分發(fā)揮學(xué)生的創(chuàng)造力。設(shè)計(jì)“游戲程序加工”教學(xué)內(nèi)容,主要是為了開啟游戲程序設(shè)計(jì)之門,使每個(gè)學(xué)生都能領(lǐng)會信息的編程加工的原理和方法。因此我基于VB程序設(shè)計(jì)平臺以“雷電”程序的加工為例,對教學(xué)進(jìn)行了精心的設(shè)計(jì)與程序?qū)崿F(xiàn)的策劃,通過學(xué)生體驗(yàn)游戲程序的加工以充分達(dá)到教學(xué)目標(biāo)。

        根據(jù)教材(《信息技術(shù)基礎(chǔ)》,上海教育科學(xué)出版社出版)課標(biāo)要求,這節(jié)內(nèi)容主要講述在VB編程環(huán)境下讓學(xué)生體驗(yàn)信息的編程加工的過程。因此在本課中我借助Moodle教學(xué)平臺,以“游戲程序的簡單加工”為主線,從學(xué)生通過VB源程序體驗(yàn)游戲并發(fā)現(xiàn)游戲存在的問題著手,引導(dǎo)學(xué)生學(xué)會查看對象、修改對象屬性和變量值,以小組合作形式讓學(xué)生嘗試解決游戲存在的問題,試圖閱讀程序代碼和代碼添加,使學(xué)生明白通過編寫程序代碼就可以完善程序的功能。在教學(xué)過程中通過學(xué)生體驗(yàn)游戲程序加工過程再到知識歸納,充分體現(xiàn)隱性知識到顯性知識的轉(zhuǎn)化。下面我就結(jié)合教學(xué)實(shí)際,談一談“雷電”游戲程序加工在教學(xué)中的實(shí)現(xiàn)過程。

        一、“雷電”游戲的設(shè)計(jì)思想

        完成此游戲程序設(shè)計(jì)涉及以下幾個(gè)方面的內(nèi)容:①敵方飛機(jī):移動(為簡化程序,將敵機(jī)置為不動)、生命值(當(dāng)被我方子彈擊中后,生命值就減1,生命值為0時(shí)則我方贏,游戲結(jié)束)、子彈數(shù)(永遠(yuǎn)夠用)、子彈射擊的路徑(設(shè)置為無規(guī)則的曲線路徑射擊)。②我方飛機(jī):移動(按“a、d、s、w”鍵時(shí)飛機(jī)“左、右、上、下”移動,飛機(jī)移動時(shí),子彈跟著飛機(jī)一起移動)、子彈射擊(點(diǎn)擊鼠標(biāo)左鍵或按“,”鍵時(shí)發(fā)射子彈,每按一次子彈數(shù)減1,子彈數(shù)為0時(shí)則我方輸了,游戲結(jié)束)、子彈射擊路徑(垂直發(fā)射)、生命值(被敵方擊中1次則生命值減1,生命值為0時(shí)則我方輸,游戲結(jié)束)。③控制鍵的檢測:通過文本框的SetFocus功能獲取光標(biāo)焦點(diǎn),檢測按鍵執(zhí)行相應(yīng)功能。④敵方與我方子彈射擊速度各由一個(gè)計(jì)時(shí)器控制。

        二、簡單的對象屬性、變量值的修改

        課程中設(shè)計(jì)從學(xué)生體驗(yàn)并發(fā)現(xiàn)“雷電游戲”存在的問題切入,學(xué)生在體驗(yàn)中發(fā)現(xiàn)我方飛機(jī)只能左移且移動速度慢、控制鼠標(biāo)左鍵發(fā)射子彈、子彈數(shù)太少、生命值不夠、敵方飛機(jī)不能動、敵機(jī)子彈無規(guī)則地曲線發(fā)射。

        針對學(xué)生發(fā)現(xiàn)的問題,經(jīng)過反復(fù)的思考與設(shè)計(jì),我巧妙地將問題串起來,同時(shí)也呈現(xiàn)了程序設(shè)計(jì)的基本過程。通過講解先讓學(xué)生了解程序的編寫環(huán)境、界面的對象及基本屬性、查看與理解基本程序代碼,以便各組學(xué)生能順利地完成如下列表中的任務(wù)。

        各組任務(wù)及指引表

        各組任務(wù)既有梯度又有相似性,梯度表現(xiàn)在:從程序界面對象屬性的修改到變量值、代碼參數(shù)的修改,遵循了程序設(shè)計(jì)的思想;相似性表現(xiàn)在各組修改的都是數(shù)值,簡單易懂。

        三、如何實(shí)現(xiàn)多功能的代碼添加

        教師提供給學(xué)生的雷電源程序,功能少漏洞多,希望同學(xué)們通過加工雷電程序,能夠使得程序功能更加完善。上述活動是教學(xué)目標(biāo)達(dá)成的一個(gè)重要過程,要圓滿完成本節(jié)教學(xué)任務(wù),需要更深層次地拓展教學(xué)內(nèi)容。由于學(xué)生對程序代碼的陌生,教學(xué)設(shè)計(jì)中只能采取以誘善引的策略,逐步使學(xué)生了解程序代碼的編寫過程,使學(xué)生既不產(chǎn)生對程序代碼的恐懼感,又能成功地添加代碼完善游戲功能,成就感會使學(xué)生保持良好的學(xué)習(xí)興趣。所以在源程序中只編寫了簡化后飛機(jī)左移的代碼。學(xué)生主動查找飛機(jī)左移的代碼在哪里,并試圖理解飛機(jī)左移代碼:

        If KeyAscii = Asc("a") Then '如果按的是a鍵,就執(zhí)行下面語句

        myplayer.Left = myplayer.Left – 30'我方飛機(jī)向左移動30個(gè)緹(單位)

        End If'結(jié)束判斷

        在教師的提示下學(xué)生很快便能掌握“if”和“end if”是成對出現(xiàn)的條件語句,可以用來判斷按鍵情況,以執(zhí)行相應(yīng)語句。(語句中的KeyAscii和Asc(“a”)不再過多解釋,學(xué)生可課后查閱相關(guān)知識。)接下來學(xué)生便可參照飛機(jī)“左移代碼”,兩個(gè)學(xué)生為一組探討添加“右移代碼”就簡單多了。大部分學(xué)生通過復(fù)制“左移代碼”到“右移代碼”提示處,再將“a”改成“d”。把“myplayer.left”改成“myplayer.right”,按照正常理解思路是對的,可是我們回過頭來查看一下“myplayer”的對象屬性,在位置屬性里只有“l(fā)eft”和“top”,沒有“right”的屬性,因此需要理解的是“改變(減少或增加)對象與窗體左邊之間的距離就能實(shí)現(xiàn)飛機(jī)的左右移動”,即執(zhí)行右移的語句為:

        myplayer.Left = myplayer.Left + 100

        游戲程序加工,除了要求每個(gè)學(xué)生都能完成上述基本的活動任務(wù)外,更要強(qiáng)調(diào)學(xué)生創(chuàng)造力的發(fā)揮,要求學(xué)生課后有選擇地、有創(chuàng)造性地去修改游戲程序,比一比誰加工的游戲程序功能更多、更合理,并要求學(xué)生一周后提交作品,教師對學(xué)生的優(yōu)秀作品進(jìn)行點(diǎn)評。

        四、程序代碼(僅提供關(guān)鍵部分程序代碼)

        Dim enemylife As Integer'敵方生命值

        Dim mylife As Integer'你的生命值

        Dim fs As Boolean'判斷子彈發(fā)射

        Dim bullet As Integer'子彈數(shù)目

        Private Sub Form_Load() '程序開始運(yùn)行時(shí)初始化數(shù)據(jù)

        enemylife = 10

        fs = True

        bullet = 10

        La1.Caption = enemylife

        mylife = 3

        Label3.Caption = mylife

        Label5.Caption = bullet

        End Sub

        Private Sub Form_Click()'點(diǎn)擊鼠標(biāo)時(shí)子彈發(fā)射

        If bullet <> 0 And enemylife <> 0 And mylife <> 0

        Then

        mybullet.Visible = True: Timer1.Enabled = True

        bullet = bullet - 1 '子彈數(shù)減1

        Label5.Caption = bullet

        End If

        End Sub

        Private Sub Text1_KeyPress(KeyAscii As Integer)

        Text1.Text = ""

        Text1.SetFocus

        If fs = True Then

        mybullet.Left = myplayer.Left + myplayer.Width / 2

        '子彈未發(fā)射,我方飛機(jī)左移時(shí),子彈跟著左移.

        End If

        If KeyAscii = Asc("a") Then

        myplayer.Left = myplayer.Left - 30

        End If

        '此處可添加按鍵控制的代碼,如右移等

        End Sub

        '計(jì)時(shí)器1控制我方子彈移動速度程序段

        '計(jì)時(shí)器2控制敵方子彈移動速度程序段

        '游戲結(jié)束程序段

        '游戲開始程序段

        (作者單位:廣東廣州市第五中學(xué))

        猜你喜歡
        左移程序代碼子彈
        華容道玩法大解密
        三顆子彈
        子彈VS防彈
        Karma:讓子彈飛一會兒
        汽車觀察(2019年2期)2019-03-15 06:00:20
        子彈
        計(jì)算機(jī)網(wǎng)絡(luò)信息安全未來發(fā)展趨勢
        基于圖元裝接模式由程序流程圖自動生成源代碼
        軟件工程(2016年11期)2017-01-17 16:56:57
        C語言位運(yùn)算中鮮為人知的事
        軟件工程(2014年5期)2014-09-24 11:53:38
        嵌入式系統(tǒng)中程序的優(yōu)化策略
        新媒體研究(2009年4期)2009-03-14 06:59:48
        VBA在課件交互設(shè)計(jì)中的應(yīng)用
        亚洲av日韩综合一区尤物| 国产成人精品午夜福利在线| 亚洲av无码第一区二区三区| 国产成人综合久久久久久| 国产美女高潮流的白浆久久| 少妇激情一区二区三区99| 少妇aaa级久久久无码精品片| 91麻豆国产香蕉久久精品 | 影音先锋久久久久av综合网成人| 欧美一区二区三区红桃小说| 日日碰狠狠躁久久躁| 亚洲欧洲日产国码久在线观看| 国产一区二区三区av观看| 亚洲av毛片在线网站| 中文天堂国产最新| 国际无码精品| 国产黄色污一区二区三区| 自拍偷自拍亚洲精品第按摩| 国产精品51麻豆cm传媒| 亚洲熟妇网| 白色白色视频在线观看| 久久精品人人做人人爱爱| 久久久久亚洲av无码专区体验| 99国产精品无码专区| 一区二区三区日韩蜜桃| 黄片小视频免费观看完整版| 国产成人精品久久综合| 久久青草免费视频| 亚洲av午夜福利一区二区国产 | 国产亚洲午夜高清国产拍精品| 色欲aⅴ亚洲情无码av蜜桃| 日韩精品视频在线观看免费| 蜜桃一区二区三区自拍视频| 国产成人高清在线观看视频| 朝鲜女人大白屁股ass| 天美传媒一区二区| 狠狠色噜噜狠狠狠888米奇视频| 一本久道久久综合婷婷五月| 亚洲熟伦在线视频| 国语对白免费观看123| 天堂无码人妻精品av一区|