Algorithma Permutasi dan Kombinasi Susunan Lima Angka

 Dalam sebuah forum, diberikan pertanyaan tentang permutasi atau kombinasi sebagaimana berikut:

Berapa banyaknya angka yang bisa terbentuk, bila suatu angka disusun dari 5 digit, dengan catatan : (a) angka tersebut bisa dibagi 5, dan (b) angka tersebut ganjil?

Sebagai programmer, karena penasaran, penulis pun mencoba menghitung jumlah susunan yang dapat terbentuk menggunakan Javascript.

Alasan kenapa penulis menggunakan Javascript, karena penulis malas untuk membuka kompiler bahasa pemrograman lainnya.

Sedangkan jika menggunakan Javascript, dapat langsung dilihat hasilnya dengan menjalankannya di web browser.

Kode lengkapnya seperti dibawah ini:

<html>
<head>
<title>Susunan 5 angka</title>
</head>
<body>
<script>
function bolehsama()
{
	document.write("<h1>Boleh Sama</h1><ol>");
	var n=0;
	while(n<100000){
		var tmb="0000";
		if(n>9)tmb="000";
		if(n>99)tmb="00";
		if(n>999)tmb="0";
		if(n%2==1 && n%5==0)document.write("<li>"+tmb+n+"</li>");
		n++;
	}	
	document.write("</ol>");
}
function tidaksama()
{
	document.write("<h1>Tidak Sama</h1><ol>");
	var n=0;
	var angka=[];
	while(n<100000){
		var boleh=true;
		angka[4]=n%10;
		var pm=10;
		for(var j=3;j>=0;j--){
			angka[j]=parseInt(n/pm)%10;
			for(var k=j+1;k<5;k++){
				if(angka[j]==angka[k]){
					boleh=false;
					break;
				}
			}
			if(!boleh)break;
			pm*=10;
		}
		var txt="";
		for(var j=0;j<5;j++)txt+=angka[j];
		if(boleh && n%2==1 && n%5==0)document.write("<li>"+txt+"</li>");
		n++;
	}	
	document.write("</ol>");
}
window.onload=function(){
	bolehsama();
	tidaksama();
} 
</script>
</body>
</html>

Dan terhitung untuk susunan angka yang boleh sama (permutasi) terdapat 10000 susunan. Sedangkan untuk susunan yang angkanya tidak sama (kombinasi), terhitung 3024 susunan.

Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Jasa Penjadwalan Semester, UTS dan UAS Perguruan Tinggi menggunakan Google Sheet

Peringatan: Aksi Penipuan Skimming Melalui Aplikasi Android M-Pajak

Menambahkan Random Key sebagai ID Pembeda di Google Sheet dengan Apps Script

Generate Karakter Acak dan Menempatkannya di Sel Google Sheets dengan Apps Script

Menyembunyikan Failed Load Images di Blogger

Kebodohan Karyawan Menyalahkan Sistem

Menambahkan Konfirmasi Email di Google Form

Menghapus Baris di Google Sheets yang Memiliki Sel Kosong dengan Apps Script

Kode Apps Script MailApp untuk Form Mengirimkan Email