Seri etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Seri etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

16 Nisan 2010 Cuma

T-SQL ile Fibonacci Serisi

İşte  Fibonacci Serisinin ilk 30 sayısını getiren kod.  @CountOfNumbers'ı değiştirerek daha fazla sayıya da ulaşabilirsiniz. Tabii ki, bigint veri tipinin izin verdiği aralık içinde kalıyorsa.

DECLARE @CountOfNumbers int = 30

DECLARE @Fibonacci TABLE(OrderNo int, FibonacciNumber bigint)
INSERT INTO @Fibonacci(OrderNo,FibonacciNumber)
  VALUES
   (1,0), -- 1. sayı = 0
   (2,1)  -- 2. sayı = 1

DECLARE @i  int = 3, -- 3 den başlatalım, 1. ve 2. yi sayıları tabloya ekledi
        @F1 bigint = 0,
        @F2 bigint = 1,
        @F  bigint



WHILE @i<=@CountOfNumbers BEGIN
  SET @F = @F1 + @F2
  INSERT INTO @Fibonacci(OrderNo,FibonacciNumber) VALUES(@i,@F)
  SET @F1 = @F2
  SET @F2 = @F
  SET @i+=1
END

SELECT * FROM @Fibonacci