陳正光
在初中《信息技術(shù)》(福建教育出版社、《信息技術(shù)》教材編寫組編著)八年級上冊中,其中第二單元“VB程序設(shè)計基礎(chǔ)”介紹了VB的開發(fā)環(huán)境和有關(guān)基礎(chǔ)知識,初步體驗了順序、分支和循環(huán)結(jié)構(gòu)的程序設(shè)計,讓學生深刻體會到了可視化程序設(shè)計的一般過程。下面介紹本人在平時教學過程中對VB程序設(shè)計的一些體會和做法。
一、對教材中的“歌手大獎賽評分”程序進行拓展引伸,設(shè)計出比較智能多用途的程序
1.程序界面設(shè)計。新建一個標準exe工程,添加如表1所示的控件,并設(shè)置控件相應(yīng)的屬性。(見附圖1)
表1 “時鐘的時針和分針重合的問題”程序用到的控件及其屬性說明
2.算法分析。① 請輸入這次大獎賽的滿分分數(shù)(如10分或100分等等)以及評委的人數(shù),賦值給系統(tǒng)的公共變量public_min和public_i,這里要求事先定義好這兩個系統(tǒng)的公共變量。
系統(tǒng)公共變量的定義方法:單擊“工程”菜單,選擇“添加模塊”命令,在“Module1”框中輸入Public public_min As Single, public_i As Single即可。
② 輸入各評委的評分并計算。如果輸入的數(shù)值超過事先輸入的滿分的值,系統(tǒng)則提示:“出錯啦,分數(shù)超出范圍?!痹谶@里,用到了For …Next循環(huán)語句和輸入函數(shù)InputBox(提示信息,標題,默認值,位置)和輸出函數(shù)MsgBox“”。
③ 輸出:去掉一個最高分和一個最低分后其余分數(shù)的平均分。
3.編寫事件過程。在“大獎賽評分系統(tǒng)”程序中,用戶單擊“請先輸入滿分和評委人數(shù)”按鈕后,開始讀入滿分分數(shù)和評委人數(shù)。
二、下面針對教材的第103頁和第107頁的“創(chuàng)新活動”中的問題,給出比較詳細的程序編寫過程
(一)教材第103頁“創(chuàng)新活動”的問題。在12小時制的時間中,在鐘表正常走動的時候,有多少個時針和分針重合的位置?它們分別表示什么時刻(精確到秒即可)?
請編寫一個界面如附圖2所示的“時鐘的時針和分針重合的問題”程序,單擊“開始計算”按鈕,程序計算并顯示出答案,單擊“退出”按鈕,結(jié)束程序運行。
1.程序界面設(shè)計。新建一個標準exe工程,添加如表2所示的控件,并設(shè)置控件相應(yīng)的屬性。
表2 “時鐘的時針和分針重合的問題”程序用到的控件及其屬性說明
2.編寫事件過程。由于在“時鐘的時針和分針重合的問題”程序中,用戶單擊“開始”按鈕后,就在List框中顯示出時針和分針重合的位置時刻,因此我們在“開始”按鈕處編寫Click事件過程。
對于“結(jié)束”按鈕,我們只要在它的Click事件過程中寫下一個語句“end”即可。
對于“哪些時刻時針與分針成平角或直角”等問題,做法類似,這里就不再贅述。
(二)教材第107頁“創(chuàng)新活動”的第一個問題。編寫一個猜數(shù)游戲程序,程序界面如附圖3所示。單擊“開始”按鈕后,電腦隨機產(chǎn)生一個1到100之間的整數(shù),然后程序提示你猜一個數(shù),如果你輸入的數(shù)太大,則程序會提示你“太大了!”,如果你輸入的數(shù)太小,程序會提示你“太小了!”,直到你猜中為止。最后程序還會報告你一共猜了幾次。
1.程序界面設(shè)計。新建一個標準exe工程,添加如表3所示的控件,并設(shè)置控件相應(yīng)的屬性。
表3 “猜數(shù)游戲”程序用到的控件及其屬性說明
2.編寫事件過程。由于在“猜數(shù)游戲”程序中用戶單擊“開始”按鈕后,就會彈出一個框,要求你輸入所猜的數(shù),輸入的數(shù)會在List1框中顯示出來,并提示是“太大了!”或“太小了!”,因此我們在“開始”按鈕處編寫Click事件過程。