??! 我想到了——信息技術(shù)課程內(nèi)容設(shè)計集錦
許多學(xué)校開設(shè)可視化程序設(shè)計相關(guān)課程,涉及的開發(fā)工具常有VB、Delphi等。在講課的入門階段,教師通常會從幾個最簡單的公用控件開始,如文本框、標(biāo)簽框、按鈕等。當(dāng)學(xué)生僅僅了解少量關(guān)于控件屬性、事件等概念,卻尚未融匯分支、循環(huán)等基本程序設(shè)計流程的時候,教師可用來演示的例子往往非常簡單,缺乏亮點(diǎn)。本文將列舉幾個小程序的設(shè)計思路,希望能對大家有所啟發(fā)。
數(shù)字跑馬燈
此程序?qū)⑹挂淮當(dāng)?shù)字具有跑馬燈般的效果,而實(shí)現(xiàn)的方法也相當(dāng)神奇。在1到1000000的自然數(shù)序列中,只有一個數(shù)字具有某種奇妙特性,可用來實(shí)現(xiàn)數(shù)字跑馬燈,這就是142857。且看以下變換:142857-->428571-->285714-->857142-->571428-->714285-->142857。
產(chǎn)生這串?dāng)?shù)列,只需將142857分別乘以1、3、2、6、4、5、1即可。界面僅需一個標(biāo)簽框、六個按鈕。每個按鈕都觸發(fā)一個事件過程:142857乘以某特定的數(shù)字。用鼠標(biāo)以正確的順序點(diǎn)擊按鈕就能使標(biāo)簽框中的數(shù)字變成跑馬燈。要讓數(shù)字跑得更快,用鼠標(biāo)點(diǎn)就太累了,不妨試一下交替擊打鍵盤Tab鍵和Enter鍵,當(dāng)然,這需要正確地設(shè)置按鈕的TabStop和TabIndex屬性。
根號2鍛造機(jī)
三個初始值為1的文本框、兩個按鈕和一個標(biāo)簽框,就能成為一個根號2鍛造機(jī),如圖1所示。程序運(yùn)行后,交替點(diǎn)擊兩個按鈕,標(biāo)簽框中的數(shù)字便會逐漸逼近根號2的精確值。
程序很簡單,以VB為例,兩個按鈕所觸發(fā)的事件過程分別為:
Text1.Text = Text3.Text;
Text3.Text = Val(Text1.Text) + Val(Text2.Text);
Text2.Text = Val(Text1.Text) + Val(Text3.Text);
Label1.Caption = Val(Text2.Text) / Val(Text3.Text)。
如果要做一個黃金分割率的鍛造機(jī)的話,則更加簡單,只需要兩個文本框即可,這個程序完全可留給學(xué)生自己想辦法去解決(見參考答案)。
苛刻計算器
這個苛刻計算器是由四個按鈕和三個標(biāo)簽框組成的,玩家只有1、0、8、9四個數(shù)字可以按,不多不少按12次后,要求每個四位數(shù)都必須包括1、0、8、9四個字符,且要讓等式成立。當(dāng)玩家按下數(shù)字按鈕時,數(shù)字就依次顯示在一個標(biāo)簽框上,注意,減號和等號是疊加在其上的另兩個標(biāo)簽框,位置必須要恰到好處才行。以VB為例,第一個按鈕的事件觸發(fā)過程是:
Label1.Caption = Label1.Caption + "" + Command1.Caption
其他按鈕均與此類似。圖2顯示了幾種解法中的一種。