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.

      Code
      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.

      Code
      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.

      Code
      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.

      Code
      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.

      Code
      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:

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!