SQL Server’da Faktöriyel Hesabını Rekürsif Hesaplayan Prosedür

Herkese merhaba,

Bu bölümde SQL Server’da faktöriyel hesabını rekürsif hesaplayan bir prosedür örneği yapacağım.

İlk önce faktöriyel nedir ona değinelim.

1’den başlayarak belirli bir sayma sayısına kadar olan sayıların çarpımına o sayının faktöriyeli denir.

Örneğin 5’in faktöriyel (5! ile gösterilir) :  120 =5 * 4 * 3 * 2 * 1’dir.

Rekürsif nedir? 

Bir yapı eğer kendine gönderme yapma özelliğine sahipse böyle yapılara rekürsif yapılar denir.

Şimdi kod örneğine geçelim.

CREATE PROCEDURE FaktoriyelHesapla
(
    @Sayi INTEGER,
    @Sonuc INTEGER OUTPUT
)
AS
DECLARE @Giris INTEGER;
DECLARE @Cikis INTEGER;
IF @Sayi != 1
BEGIN
    SELECT @Giris = @Sayi - 1;
    EXEC FaktoriyelHesapla @Giris, @Cikis OUTPUT;
    SELECT @Sonuc = @Sayi * @Cikis;
END;
ELSE
BEGIN
    SELECT @Sonuc = 1;
END;
RETURN; 

--Çalıştırılması 

DECLARE @Sonuc INTEGER;
EXEC FaktoriyelHesapla @Sayi = 5,              -- integer 
                       @Sonuc = @Sonuc OUTPUT; -- integer 
PRINT @Sonuc;

Yukarıdaki prosedürü oluşturup çalıştırdığınızda aşağıdakine benzer bir sonuç göreceksiniz.

SQL Server’da Faktöriyel Hesabını Rekürsif Hesaplayan Prosedür

Görüldüğü üzere rekürsif olarak faktöriyel hesabını yapmış olduk.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

453 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!