Java Faktöriyel Hesaplama Algoritması

  • Merhaba sevgili Jetto Yazılımcıları

    Java programlama dilinde faktöriyel hesaplama algoritmasını öğrenmeye ne dersiniz? İşte temel adımlarla nasıl yapılacağına dair bir rehber:

    Öncelikle Faktöriyel, bir sayının kendisi ile 1 arasındaki tüm pozitif tam sayıların çarpımıdır. Örneğin, 5 faktöriyeli şu şekilde hesaplanır: 5! = 5 x 4 x 3 x 2 x 1 = 120. Faktöriyel hesaplama algoritması özyineleme (recursive) veya döngü (loop) yapısı ile gerçekleştirilebilir. Ben bu yazıda recursive ile faktöriyel hesaplamasını anlatacağım.

    Recursive en genel anlamıyla bir yapının (kendi kendine) yinelenmesidir. Programlama dünyasında ise bir metot kendi içinde tekrardan kendisini çağırıyorsa bu metot recursive metot olarak geçmektedir.

    Şimdi programı yazmaya başlayalım:

    1. "İlk olarak, kullanıcıdan bir sayı alacağız ve sayi değişkenine atayacağız. Bu işlem, programın başında yer alan main metodu içinde gerçekleştirilecek.

      Kod
      Scanner scanner = new Scanner(System.in);
      System.out.print("Faktöriyelini hesaplamak istediğiniz sayıyı girin: ");
      int sayi = scanner.nextInt();
    2. Ardından, kullanıcının girdiği değeri faktöriyel hesaplama fonksiyonuna parametre olarak ileteceğiz ve bu fonksiyonu çağıracağız.

      Kod
      System.out.println("Girdiğiniz sayının faktöriyeli: " + faktoriyelHesapla(sayi));
    3. Artık metodumuzu hazırlayacağız. Metodumuzu main metodundan çağıracağımız için static olarak belirliyoruz ve değer döndüreceği için int değerini veriyoruz.

      Kod
      public static int faktoriyelHesapla(int n) { 
      
       }
    4. Girilen rakamın 0 olması hglinde 1 değerinin döndürülmesi için bir şart bloğu ekliyoruz.

      Kod
      if (n == 0) { 
      return 1;
      } else {
      
       }
    5. Girilen sayı sıfır olmadığında, else bloğu çalışacak. Bu kısım faktöriyel hesaplama fonksiyonunun ana mantığını oluşturur. Eğer gelen sayı 0'dan farklı bir sayı ise, fonksiyon kendisini tekrar çağırarak (n-1) değerini faktöriyelHesapla fonksiyonuna parametre olarak iletilir. Bu işlem, n'nin değeri 0 olana kadar devam eder ve sonuç olarak faktöriyel elde edilir ve değer döndürülür.

      Kod
      else { 
      return n * faktoriyelHesapla(n - 1);
       }

      Böylelikle faktöriyel hesaplamasını tamamlamış olduk. Siz döngü yapısı ile de hesaplatabilirsiniz. Yorumlarda nasıl yaptığınızı yazabilirsiniz. Ayrıca sorularınızı da yazabilirsiniz.

      Buraya kadar okuduğunuz için teşekkür ederim.

      Tüm Kodlar:

Şimdi katılın!

Henüz bir hesabınız yok mu? Şimdi kayıt olup topluluğumuzun bir parçası olun!