Selasa, 06 Maret 2018


SORTING / PENGURUTAN


Sorting merupakan suatu proses untuk menyusun kembali humpunan obyek menggunakan aturan tertentu. Sorting disebut juga sebagai suatu algoritma untuk meletakkan kumpulan elemen data kedalam urutan tertentu berdasarkan satu atau beberapa kunci dalam tiap-tiap elemen.
Kali ini kita akan membahas tentang : Bubble Sort , Selection Sort dan Insertion Sort.  

 1.   Bubble Sort.
 Bubble Sort adalah pengurutan dengan cara pertukaran data dengan data disebelahnya secara terus menerus sampai dalam satu iterasi tertentu tidak ada lagi perubahan.
Berikut contoh nya :



2. Selection Sort.
selection sort adalah mencari elemen yang tepat untuk diletakkan di posisi yang telah diketahui, dan meletakkannya di posisi tersebut setelah data tersebut ditemukan,
Selection Sort Membandingkan elemen yang sekarang dengan elemen yang berikutnya sampai dengan elemen yang terakhir. Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang 
maka dicatat posisinya dan kemudian ditukar.
Ini contoh soal dan pemecahan nya :



3.   Insertion Sort.
Insertion Sort adalah proses pengurutan data yang dimulai dari indeks ke satu sampai terahir. Apabila data tersebut sesuai maka data tersebut akan digeser pada posisi yang sesuai. Contoh soal nya :


Proses 1 :


100 > 20 digeser
100 > 7 digeser

Proses 2 :


20 > 7 digeser

Proses 3 :


100 > 50 digeser

Proses 4 :


100 > 50 digeser
50 > 20 digeser
20 > 7 digeser
7 > 2 digeser

Proses 5 :


100 > 33 digeser
50 > 33 digeser

Contoh coding nya guyss!!!


<html>
<head>
<title>Tugas 4</title>
<script language="Javascript">
var data = new Array()
var i = 0;
function TambahData()
{
data[i]=parseInt(document.getElementById("txtJumlah").value);
i++;
document.getElementById("txtJumlah").value="";
}
function TampilData(teks)
{
for(var a=0;a<data.length;a++)
document.getElementById(teks).innerHTML+=data[a]+" ";
document.getElementById(teks).innerHTML+="<br>";
}
function InsertionSort()
{
var temp;
var upper=data.length;
var min;
for(var outer=0;outer<upper;outer++)
{
min=outer;
for(var inner=outer;inner<upper;inner++)
{
if(data[inner]<data[min])
{
min=inner;
}
}
temp=data[outer];
data[outer]=data[min];
data[min]=temp;
TampilData("lblSorting");
}
}
</script>
</head>
<body bgcolor="black"><font color="White">
<form>
<center>
<h3>Tugas 4</h3>
<p><label>Masukkan Data : </label><input type="text" id="txtJumlah">
<input type="button" value="Tambah Data" onclick="TambahData()"><br></p>
<p><input type="button" value="Tampil Data" onclick="TampilData('lblData')"><br>
<label>Data Awal : </label><label id="lblData"></label><br></p>
<p><label>Selama Sorting:</label>
<input type="button" value="Tampil Data" onclick="InsertionSort()"><br>
<label id="lblSorting"></label><br></p></font>
</center>
</form>
</body>
</html>

Tugas 4

 

 

Itulah contoh soal dan penyelesaian nya , semoga bermanfaat !!!



Rabu, 28 Februari 2018

SEARCHING

Adalah pencarian / proses pencarian mendapatkan sesuatu informasi berdasarkan kunci tertentu.
Searching ada dua macam yaitu : squencial search dan binary search. Berikut keterangan masing-masing nya.

1    1.       Squencial search.
Merupakan pancariandata pada array dengan berurutan.
Contoh nya :



Kriteria = 29;
While(kriteria !=Data[indeks]);
     {
                Indeks ++
     }
                Ketemu = data[indeks];

                Ketemu = 29[1]

      2.       Binary Search.
Salah satu metode pencarian yang menangani kasus terburuk (worst case) pada pencarian secara berurutan. Binary search hanya dapat dilakukan pada data yang sudah berurutan.


Berikut contoh soal-soal nya maripecahkan bersama :
Bandingkan kecepatan antara squencial dan binary search beserta langkah-langkah nya.



Jawab :
Kriteria = 17

·         Squencial
17!=x[0] (16) = ya
17!=X[1] (17) = tidak
Ketemu = x[1]
Ketemu = 17

·         Binary
17<45



17=17
Ketemu = 17 (x[1])

Kriteria 23

·         Squencial
23 == x[0] = false , indeks ++
23 == x[1] = false , indeks ++
23 == x[2] = true , tampilkan

·         Binary
0 + 7 = 7/2 = 3,5   I x[3]=45
                If(23<=45)



                0 + 2 = 2/2 = 1   I x[1]=17
                                If(23>=17)
                


                If(23 == 23) {
                   Tampilkan 23
                                       }
Kriteria 78

·         Squensial
78!= x[0] = y = indeks ++
78!= x[1] = y = indeks ++
78!= x[2] = y = indeks ++
78!= x[3] = y = indeks ++
78!= x[4] = y = indeks ++
78!= x[5] = T = ketemu x[5]

·         Binary
0 + 7 = 7/2 = 3,5 = 3         x[3]=45



0 + 5 = 5/2 = 2,5 = 2         x[2] = 78




Itu lah tadi sedikit tentang searching ,, semoga bermanfaat !!!


Selasa, 27 Februari 2018

NESTED LOOP
Assalamualaikum Wr.Wb
Kali ini kita akan belajar bareng tentang “nested loop/perulangan tersarang”, apakah itu ???
Nested Loop/Perulangan tersarang adalah perulangan yang berada di dalam struktur perulangan lainnya.
Nihh contoh nya :
for (int i=0; i<=3; i++)
  {
    for (int j=0; j<=5; j++)
      {
         write ( i+','+j)
      }
   }
Artinya :
-          Variabel dimulai 0 dan diahiri 3
-          Di dalam i terdapat variabel j yangdi mulai dari 0 dan dihiri 5

Coba kita pecahkan rumus dari contoh soal berikut ini :
for(int i=0; i<=5; i++)
     {
       for(int j=0; j<=2; j++)

    { 
      x(i,j) = i + j;
    }
    }
Dari rumus contoh soal di atas kita akan mengisi array x dengan baris dan kolom i dan j. 
11.  Baris pertama
i=0                          j=1                          j=2
j=0                          x(0,1) = 1              x(0,2) = 2
x(0,0) = 0













   




    2.  Baris kedua
i=1                          j=1                          j=2
j=0                          x(1,1) = 2              x(1,2) = 3
x(1,0) = 1

   
          















         
3.    3. Baris ketiga
i=2                          j=1                          j=2
j=0                          x(2,1) = 3              x(2,2) = 4
x(2,0) = 2











    
      4.       Baris keempat
i=3                          j=1                          j=2
j=0                          x(3,1) = 4              x(3,2) = 5
x(3,0) = 3













      5.       Baris kelima
I=4                          j=1                          j=2
J=0                         x(4,1) = 5              x(4,2) = 6
X(4,0) = 4












     6.       Baris keenam
I=5                          j=1                          j=2
J=0                         x(5,1) = 6              x(5,2) = 7
X(5,0) = 5













Nihh lagi rumus cara menjumlahkan :

for(int i=0; i<2; i++)
   {
                For(int j=0; j<2; j++)
                {
                   c [i,j]=A[i,j] + B[i,j];
                }
   }
Ini contoh soal nya :



Artinya adalah array A=10 ditambah array B=50 jadi hasilnya = 60 pada array C.

Ini rumus selanjutnya :

for( int i=0; i<=5; i++)
   {
      for( int j=0; j<=2; j++)
   {
     if ( j>= i)
       {
          x[i,j] = (j + i) * 2                           jika nilai pada kolom lebih besar daripada baris.
       {
         else
       {
         x[i,j] = ( j - i) +5                                        jika nilai pada baris lebih besar daripada kolom.
     }
    }
  }

dan ini adalah contoh soal nya !!!

















Kita akan mengerjakan soal yang berwarna hijau pada tabel di atas :
Diket : karena i lebih besar daripada j maka :
X[i,j]=(j-1)+5
       =(2-4)+5
       = -2+5
       = 3



Rabu, 14 Februari 2018

ARRAY 2 DIMENSI

Assalamu’alaikum Wr.Wb
Kali ini kita akan membahas ARRAY 2 DIMENSI.
Apa itu ARRAY 2 DIMENSI yaitu perluasan dari array satu dimensi yang terdiri dari baris dan kolom.


Langsung saja :

*cara menulis indeks array 2 dimensi :
                Nama array [indeks baris,indeks kolom]                                
                Contoh Z=[1,2]
*untuk mengisikan :
                Identifikasi array : data
                Z [2,1] = 10
*untuk mengambil :
                Variabel = identitas array
                                70 = Y [1,2]

*SOAL – SOAL :
*MENJADI :
*JAWAB :

1. X[0,2] ke X[0,1]









2. X[1,0] ke X[1,2]








3. Y[0,1] ke x[1,0]








4. X[2,2] ke X[0,2]








5. Y[1,1] ke X[2,2]








6. Y[2,0] ke X[2,1]








7. Y[0,2] ke X[2,0]








*SOAL – SOAL :



*MENJADI :

*JAWAB :








2. X[0,2] ke Y[0,1]

3. X[1,1] ke Y[1,0]
4. Y[1,2] ke Y[1.1]








5. X[1,0] ke Y[2,2]









<html>
<head>
<title>Test Array 2 Dimensi Dinamis</title>
<style>
label
{
width : 100px;
padding:7px;
display: inline-block;
color: black;
}
</style>
<script type="text/javascript">
var b=0;
var DataBarang = new Array();
var kodebar;
var a;
function _DaftarHarga(DataBarang)
{
var harga;
if(DataBarang == "Gula Putih")
{
harga = 11000;
}
else if(DataBarang == "Susu Kaleng")
{
harga = 5500;
}
else if(DataBarang == "Minyak Goreng")
{
harga = 7300;
}
else if(DataBarang == "Beras")
{
harga = 9800;
}
else if(DataBarang == "Sarden")
{
harga = 8500;
}
return harga;
}
function penjumlah()
{
var harga = parseInt(document.getElementById("txtHarga").value);
var jumlah = document.getElementById("txtJumlah").value;
var a;
i = parseInt(harga * jumlah);
document.getElementById("txtJum").innerHTML = i;
return i;
}
function InputData()
{
DataBarang[b] = new Array();
DataBarang[b][0] = document.getElementById("txtKode").value;
DataBarang[b][1] = document.getElementById("txtBarang").value;
DataBarang[b][2] = document.getElementById("txtJumlah").value;
DataBarang[b][3] = penjumlah();
b++;
document.getElementById("txtBarang").value="";
document.getElementById("txtKode").value="";
document.getElementById("txtJumlah").value="";
document.getElementById("txtJum").value="";
}
//KURANG TOTAL HARGA DAN JUMLAH YANG DI INGINKAN
function HitungTotal()
{
var total = 0;
document.getElementById("txtHasil").innerHTML="";
for(var s=0; s<DataBarang.length;s++){
document.getElementById("txtHasil").innerHTML += DataBarang[s][0]+"="+DataBarang[s][1]+"="+DataBarang[s][2]+"="+DataBarang[s][3]+"<br>";
total +=DataBarang[s][3];
}
document.getElementById("txtTotal").innerHTML=total;
}
</script>
</head>
<script>
//function input
function DaftarHarga()
{
var DataBarang = document.getElementById("txtBarang").value;
var harga = _DaftarHarga(DataBarang);
document.getElementById("txtHarga").value = harga;
}
</script>
<body>
<body style="background-color : pink">
<div class="tengah">
<h2 style="border : 2px solid white; width : 25%;color:white;background-color:black">Sistem Penjualan Toko </h2>
<label style="color : black">Kode Barang : </label>
<select id="txtKode" name="Kode List">
<option value="K001">K001</option>
<option value="K002">K002</option>
<option value="K003">K003</option>
<option value="K004">K004</option>
<option value="K005">K005</option>
</select><br>
<label style="color : black">Nama Produk : </label>
<select id="txtBarang" name="Barang List" onchange="DaftarHarga()">
<option value="Gula Putih">Gula Putih</option>
<option value="Susu Kaleng">Susu Kaleng</option>
<option value="Minyak Goreng">Minyak Goreng</option>
<option value="Beras">Beras</option>
<option value="Sarden">Sarden</option>
</select><br>
<label style="color : black">Harga : </label>
<input type="text" id="txtHarga" disabled/><br>
<label style="color : black">Jumlah :</label>
<input type="text" id="txtJumlah"/><br>
<input style="border :2% solid white; width :10%;color :white;background-color:black" type="button" value="Tambah Produk" onclick="InputData();">
<input style="border :2% solid white; width :10%;color :white;background-color:black" type="button" value="Hitung Total" onclick="HitungTotal();"><br>
<label id="txtHasil"></label>
<label id="txtJum"></label>
<label id="txtTotal"></label>
</body>
</html>

Sistem Penjualan Toko

 
 
 
 
 
  



Demikian pembahasab ARRAY 2 DIMENSI coy , jika ada saran bisa di tulis di kolom komentar di bawah. !!!


Wassalam Wr.Wb