劉玲
摘要:該文意在介紹利用Flash平臺來制作隨機數(shù),介紹了制作單個隨機數(shù)和多個隨機數(shù)的方法,并將隨機數(shù)制作遷移、運用到課堂內外。
關鍵詞:Flash;隨機數(shù);制作;運用
中圖分類號:TP37文獻標識碼:A文章編號:1009-3044(2012)26-6367-02
Flash雖說是一個動畫制作軟件,但是它也可以完成應用程序的開發(fā),其實就是把單個的動畫片段連接起來,并在制作中加入圖形、圖片、聲音、視頻等,豐富應用程序,但是有時要完成稍微復雜的應用程序,如果僅是使用時間軸、動作按鈕,這會使制作耗時又費力,而使用Flash的編程功能,就可以輕松解決這個問題。可能作為入門級的學習者來說,覺得使用編程功能,感到很困難,其實不然,在Flash中使用的編程代碼,理解后,模仿學習,再掌握,就很容易了。
隨機數(shù)是無序的數(shù),前一個數(shù)和后一個數(shù)沒有聯(lián)系,無規(guī)律可言的數(shù)。這樣的數(shù)字在我們的生活中經常要用到,為我們提供了幫助,這些數(shù)變得非常有意義。
1制作隨機數(shù)
1.1產生單個隨機數(shù)
產生單個的隨機數(shù),可用random()函數(shù)。
在場景舞臺中放入一個動態(tài)文本,動態(tài)文本的屬性變量值為“a”:
a=random(10);//產生0-9之間的10個隨機數(shù)
上述產生的隨機數(shù)中有0,而沒有10這個數(shù)字,在一些工作中,無法完成,比如:抽簽,那么我們將上述代碼稍微修改一下,讓隨機數(shù)加1,整體平移一個單位。
a=random(10)+1;//產生1-10之間的10個隨機數(shù)
當然這種方式產生的隨機數(shù),是非常簡單的,每次變化只有一位數(shù)。如果是多個同時變化的隨機數(shù),那么利用這種方式來制作,就顯得繁瑣了。
1.2產生多個隨機數(shù)
產生多個隨機數(shù),我們可以使用循環(huán)語句來完成繁瑣賦值問題,以四位數(shù)為例,制作步驟如下:
在flash的舞臺中,在第一個場景中,時間軸“圖層1”第一幀放入四個動態(tài)文本,將它們的實例名稱分別改為t1、t2、t3、t4。在時間軸中新建一層,改名為“動作”,在第一幀“動作—幀”面板中加入動作代碼。
A1.var total:Number =400; //產生0-399之間的400個隨機數(shù)
A2.var nums:Array = new Array(total);
A3.var newNums:Array = new Array(total);
A4.for(var i:Number = 0;i<=total;i++)
A5.{ nums[i] = new Number(i); }
A6.var rest:Number;
A7.var n:Number;
A8.var tempArray:Array;
A9.var j:Number ;
A10.var k:Number;
A11.for(rest = total; rest > 1; rest--)
A12.{ n = Math.floor(Math.random()*rest);
A13.newNums[total-rest] = nums[n];
A14.tempArray = new Array(rest-1);
A15.for(j=k=0;k < rest; k++)
A16.{if(k != n)
A17.{ tempArray[j] = nums[k];
A18.j++;}
A19.}
A20.nums = tempArray;}
A21.newNums[total-1] = nums[0];
A22.for(var m:Number = 0; m<4;m++) //將隨機數(shù)分配給四個動態(tài)文本
A23.{ _root["t"+String(m+1)].text = newNums[m].toString();}
這樣就產生了四位隨機數(shù),但如果要讓隨機數(shù)不斷變化,動起來,還應加入下面的操作。在時間軸上新加入一層,命名為“控制”,在第二幀上“動作—幀”加入如下代碼:
gotoAndPlay(1);
2隨機數(shù)的運用
2.1隨機數(shù)在教學中運用
初中信息技術教師可能感覺在教學中,有的知識點很古板、不生動,比如介紹二進制數(shù)時,雖然書上也有從十進制數(shù)入門,再過渡到二進制數(shù)介紹,但學生對這樣死板的知識點不感興趣,怎樣才能激發(fā)學生的學習興趣,筆者就可使用隨機數(shù)來完成。
使用產生多個隨機數(shù)的制作方法,稍加修改即可完成,將代碼中A1句改為:
var total:Number =2;//產生0-1之間的2個隨機數(shù)
將A22句這一句改為:
for(var m:Number = 0; m<2;m++)//將產生的隨機數(shù)分配給兩個動態(tài)文本
這樣就完成了不斷跳動的四位二進制數(shù),對于動態(tài)的東西,學生都比較感興趣,有化腐朽為神奇的功效。不斷跳動的隨機數(shù),馬上能抓住學生的注意力,集中了精神,學習效率事半功倍。
2.2隨機數(shù)在教務工作上的運用
學校每年秋季開學,都會招收一批新生,教育局給每個學校都規(guī)定了一定的招收人數(shù),而符合招收條件的學生又很多,比如:符合條件報名的有400人,而學校只招收100人。如果按照先來先報到的條件,有的學生家長不滿意,認為稍微住的遠的,趕來不方便;按照寫號碼牌后抽簽,學生家長又不放心,怕作弊。為了達到公平、公正、公開的效果,這個時候就可以使用計算機程序隨機產生的號碼、學生家長代表來操作、公證處公正來完成。
根據(jù)上述多個數(shù)的制作方法,我們可以發(fā)現(xiàn)0會出現(xiàn),而400不會出現(xiàn),我們就要考慮把每隨機產生的數(shù)都平移1,即加1,那么可以將A5這一句改為:
{ nums[i] = new Number(i+1); }
將A22這一句改為:
for(var m:Number = 0; m<100;m++)//將產生的隨機數(shù)分配給100個動態(tài)文本
修改后,我們就可以從1-400之間的400個號碼中隨機產生100個號碼,當然一定要注意的是,你的動態(tài)文本數(shù)一定要小于等于總號碼數(shù),不然多出來的文本框就會出現(xiàn)“undefined”這樣的字樣。
通過以上對Flash平臺下隨機數(shù)的制作的介紹及拋磚引玉的運用列舉,學習者們會感到,其實這一點也不難。Flash是一個很好的平臺,在這個平臺上制作隨機數(shù),運用于生活的方方面面,為我們的生活帶來的方便,提供了幫助。
參考文獻:
[1]形素萍.巧用Flash8.0的隨機數(shù)制作數(shù)字游戲[J].農業(yè)網(wǎng)絡信息,2009(3).
[2]蔣桂梅. Flash在信息技術與課程整合中的作用和實現(xiàn)[J].電腦知識與技術,2009(9).
[3]卿立興. Flash動畫在信息技術課堂教學中的運用[J].科學咨詢,2012(2).