Menghitung Faktorial Dengan Menggunakan Bahasa Java
Masih ingatkah pelajaran matematika tentang menghitung faktorial dari sebuah bilangan. Kalau di sekolah dulu kita menghitungnya secara manual.
Karena kita sekarang sedang mempelajari bahasa pemrograman java, maka kita akan membuat program java untuk menghitung faktorial dari sebuah bilangan.
Seperti yang terlihat pada program diatas, pertama-tama kita akan mengecek apakah bilangan tersebut termasuk bilangan bulat positif atau tidak. Jika seandainya bilangan bulat positif, maka akan dipanggil method (fungsi) hitung_faktorial(). Dalam method tersebut akan dicek terlebih dahulu, jika bilangan 0 maka akan dikembalikan nilai 1, jika bukan maka akan dilakukan proses perhitungan faktorial dan akan dikembalikan hasilnya, dimana ditampung oleh variabel faktorial.
Karena kita sekarang sedang mempelajari bahasa pemrograman java, maka kita akan membuat program java untuk menghitung faktorial dari sebuah bilangan.
Pengertian faktorial
Pada matematika, faktorial merupakan hasil perkalian dari sebuah bilangan (n), kemudian secara berturut dikurangi 1 (n-1) hingga bilangan akhir adalah 1. Bilangan n merupakan bilangan bulat positif. Penulisan n faktorial (n!) dituliskan sebagai berikut :
n! = n * (n-1) * (n-2) * (n-3) * ... * 1
Contoh :
- 4! = 4*(4-1)*(4-2)*(4-3) = 24
- 5! = 5*(5-1)*(5-2)*(5-3)*(5-4)= 120
Program Java Menghitung Faktorial
Program java berikut akan melakukan perhitungan n faktorial (n!), dimana proses inputan dilakukan pada saat program runtime. Program ini juga akan mengfilter apakah bilangan yang diinputkan bilangan bulat positif atau tidak.utputnya ditunjukkan oleh Gambar.1 dibawah ini :import java.util.Scanner;
public class Factorial {
public static void main(String args[])
{
boolean menu = true;
while (menu)
{
Scanner scan = new Scanner(System.in);
System.out.print("\nMasukkan Bilangan Bulat Positif : ");
int n = Integer.parseInt(scan.nextLine());
if (n<0)
{
System.out.println("Nilai yang dimasukkan bukan bilangan bulat positif");
}
else
{
int faktorial = hitung_faktorial(n);
System.out.println("Nilai Faktorialnya : " + faktorial);
}
System.out.print("\nMau mencoba lagi (Y/N) ? : ");
String ulang = scan.nextLine();
if(ulang.equalsIgnoreCase("N"))
menu=false;
else if (ulang.equalsIgnoreCase("Y"))
menu = true;
else
System.exit(0);
}
}
private static int hitung_faktorial(int x)
{
if(x==0)
{
x=1;
}
else
{
x = x * hitung_faktorial(x-1);
}
return x;
}
}
Outputnya ditunjukkan oleh Gambar.1 dibawah ini :Gambar.1 |