Berikut ini merupakan kodingan permutasi dan kombinasi pada bahasa pemrograman java menggunakan pilihan menu. Kodingannya sebagai berikut:
import java.io.*; //menambahkan fungsi java.io yang diantaranya fungsi (InputStreamReader dan BufferedReader)
import javax.swing.*; //meng-import class JOptionPane dari package javax.swing
public class permutasi_dan_kombinasi {
public static void main(String[] args) throws IOException{ /*untuk penanganan kesalahan*/
BufferedReader input=new BufferedReader (new InputStreamReader(System.in)); /*untuk membaca inputan dari user*/
do {
System.out.println("PROGRAM PERMUTASI DAN KOMBINASI");
System.out.println("===============================");
System.out.println("1. Permutasi");
System.out.println("2. Kombinasi");
System.out.println("3. Keluar");
System.out.println("===============================");
System.out.print("Masukan pilihan [1-3] = ");
int pi=Integer.parseInt(input.readLine());
switch(pi){ /*instruksi percabangan untuk menyederhanakan instruksi percabangan supaya kondisi yang ada menjadi lebih sedikit*/
case 1:
System.out.println("Bentuk Umum Permutasi mPn");
System.out.print("Masukan bilangan m = ");
int m=Integer.parseInt(input.readLine());
System.out.print("Masukan bilangan n = ");
int n=Integer.parseInt(input.readLine());
int o=1;
int s=1;
int p, q, r;
for(p=m;p>=1;p--) {
o*=p;
}
q=(m-n);
for(r=q;r>=1;r--) {
s*=r;
}
System.out.println(m+"P"+n+" = "+(o/s));
break;
case 2:
System.out.println("Bentuk Umum Kombinasi xCy");
System.out.print("Masukan bilangan x = ");
int x=Integer.parseInt(input.readLine());
System.out.print("Masukan bilangan y = ");
int y=Integer.parseInt(input.readLine());
int t=1;
int u=1;
int v=1;
int w, z, k, j;
for(w=x;w>=1;w--) {
t*=w;
}
k=(x-y);
for(z=k;z>=1;z--) {
u*=z;
}
for(j=y;j>=1;j--) {
v*=j;
}
System.out.println(x+"C"+y+" = "+(t/(u*v)));
break;
case 3:
break;
default:
System.out.println("Tolong masukan yang benar pilihannya!!");
break;
}
}
/*menampilkan sebuah dialog untuk melakukan konfirmasi pemakai tentang suatu proses yang tampilannya berupa yes, no atau cancel*/
while (JOptionPane.showConfirmDialog(null,"Ulang lagi?")==JOptionPane.YES_OPTION);
}
}
inilah outputnya :
tampilan menu :
tampilan pilihan 1, yaitu permutasi :
tampilan dialog box, klik yes untuk mengulang ke menu awal :
tampilan pilihan 2, yaitu kombinasi :
tampilan pilihan 3, yaitu keluar atau pada kotak dialog box pilih no :
Link teman: dyasyass.blogspot.com
Maaf, saya kurang ngerti di bagian
ReplyDeleteint t=1;
int u=1;
int v=1;
int w, z, k, j;
for(w=x;w>=1;w--) {
t*=w;
}
k=(x-y);
for(z=k;z>=1;z--) {
u*=z;
}
for(j=y;j>=1;j--) {
v*=j;
bisa tolong di jelaskan ga, apa fungsi u, v, w, z, k, j itu..thanks