Sabtu, 28 Mei 2011

Segitiga Pascal Pada Java

Sebenarnya, menampilkan segitiga pascal dapat dilakukan hanya dalam fungsi main(public static void main(String[] args), namun cara ini lebih kompleks karena temen - temen harus mengatur fungsi faktorial sendiri di dalam fungsi main tersebut. Sebenarnya bisa, tapi lebih membingungkan. Sehubungan dengan kebingungan tersebut, pada artikel kali ini, akan ane buat fungsi - fungsi yang nantinya akan menjadi rumus menampilkan segitiga pascal tersebut. Fungsi ini ditunjukkan oleh script berwarna di bawah ini:

public class SegiTigaPascal
public int proc(int angka){
if(angka == 0){
return 1;
}
else
return angka;
}
public int minus(int x, int y){
if(x - y == 0){
return 1;
}
else
return x- y;
}
public int faktorial(int angka){
int faktorial = 1;
for(int x = 1; x <= angka; x++){
faktorial *= x;
}
return faktorial;
}
public static void main(String[] args) {
SegiTigaPascal panggil = new SegiTigaPascal();
int batas = 4;
int xFaktorial = 1;
int yFaktorial = 1;
int minFaktorial = 1;
int simpan;
int hasil = 0;
for (int x = 0; x <= batas; x++) {
xFaktorial *= panggil.proc(x);
for (int y = batas; y >= x; y--) {
System.out.print(" ");
}
for (int y = 0; y <= x; y++) {
yFaktorial *= panggil.proc(y);
minFaktorial = panggil.minus(x, y);
simpan = panggil.faktorial(minFaktorial);
hasil = xFaktorial/(yFaktorial * (simpan));
System.out.print(hasil + " ");;
}
yFaktorial = 1;
System.out.println("");
}
}
}

NB:
  • Script berwarna biru adalah fungsi untuk mengembalikan nilai 1 apabila angka pada parameter adalah 0, Fungsi ini berlaku karena (entah saya yang gak tahu atau emang gak ada) java tidak menyediakan prosedur faktorial sendiri, sehingga fungsi ini akan berjalan apabila dibutuhkan hasil 0 faktorial.
  • Sript berwarna merah adalah fungsi untuk menghitung hasil pengurangan. Hasil pengurangan ini diperlukan karena kombinasi nCr = n! / r!(n - r)!. Nah, fungsi ini yang berperan dalam menghitung (n - r)!.
  • Script berwarna kuning adalah fungsi untuk menghitung faktorial.

Tidak ada komentar:

Posting Komentar