{ 斐波那契数列: 1、2、3、5、8、13、21、34、55、89、144 ... 等于前两数之和 }{ 昂纳�շ�,����多·斐波那契(Leonardo Fibonacci, 1170-1240, 意大利数学家) }uses Types;{参数 2 是要获取的总数}procedure fbnc(var A: TInt64DynArray; Count: Integer);var i: Integer;begin SetLength(A, Count); A[0] := 1; A[1] := 2; for i := 2 to Count do A[i] := A[i-2] + A[i-1];end;{测试}procedure TForm1.Button1Click(Sender: TObject);var ns: TInt64DynArray; n: Int64;begin fbnc(ns, 90); Memo1.Clear; for n in ns do Memo1.Lines.Add(IntToStr(n));end;{查看其黄金分割比}procedure TForm1.Button2Click(Sender: TObject);var ns: TInt64DynArray; i: Integer;begin fbnc(ns, 90); Memo1.Clear; for i := 0 to Length(ns) - 1 do begin if i = 0 then Continue; Memo1.Lines.Add(FloatToStr(ns[i] / ns[i-1])); end;end;
posted on 2010-05-10 11:08 万一 阅读(4883) 评论(5) 编辑 收藏