天天看點

AS3實作經典算法(一) 斐波納契數列

package{
/*
斐波納契數列,又稱黃金分割數列,指的是這樣一個數列:1、1、2、3、5、8、13、21、……在數學上,
斐波納契數列以如下被以遞歸的方法定義:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)*/

/*
題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,
小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月
的兔子總數為多少? 
1.程式分析: 兔子的規律為數列1,1,2,3,5,8,13,21....
*/
	
	import flash.display.Sprite;
	
	public class Fibonacci extends Sprite{
		public static var MONTH = 15;
		
		public function Fibonacci(){
			init();
		}
		
		private function init():void{
			var f1:uint = 1;
			var f2:uint = 1;
			var f:uint;
			trace("第1個月的兔子對數:" + f1);
			trace("第2個月的兔子對數:" + f2);
			for(var i:uint=3; i<=MONTH; i++){
				f = f2;
				f2 = f1 + f2;
				f1 = f;
				trace("第" + i + "個月的兔子對數:" + f2);
			}
		}
	}
}


/* output
第1個月的兔子對數:1
第2個月的兔子對數:1
第3個月的兔子對數:2
第4個月的兔子對數:3
第5個月的兔子對數:5
第6個月的兔子對數:8
第7個月的兔子對數:13
第8個月的兔子對數:21
第9個月的兔子對數:34
第10個月的兔子對數:55
第11個月的兔子對數:89
第12個月的兔子對數:144
第13個月的兔子對數:233
第14個月的兔子對數:377
第15個月的兔子對數:610
*/
           

繼續閱讀