Tuesday 27 February 2018

Searching


Assalamualaikum wr.wb

Hy teman2 kali ini saya akan membahas tentang Binary Search dan Squential Search .
Binary Search hanya bisa melakukan pencarian data yang sudah terurut.Prinsip kerjanya membagi dua daftar jika elemen ditemukan. Sedangkan Sequential Search adlah teknik pencarian data dimana data dicari secara urut dari depan ke belakang atau dari awal sampai akhir.
Contoh Binary search


Jika dicari angka 74 maka prosesnya sebagai berikut :
Langkah awal : diurutkan


34
67
23
28
98
15
74
67
28
18


Langkah kedua : dijadikan 2
15
18
23
28
28
34
67
67
74
98

15
18
23
28
28

                                              
Langkah ketiga : dibagi menjadi 2 bagian lagi
34
67

 
67
74
98

Langkah terakhir : dipilih tengahnya
67
74

98

v  Sedangkan mencari sequential begini caranya

-          Missal sequential kriteria = 17
1.      17 ! = x [0] (16) = YA index++
2.      17 ! = x [1] (17) =  TIDAK

16
17
23
 Binary = 17 < 45

Indeks tengah 17
17 = 17 ketemu = 17 (x[1])

v  Cara ke dua mencari Sequential kriteria = 23
23 = x [0] = FALSE = index++
23 = x [1] = FALSE = index++
23 = x [2] = TRUE   = tampilkan

Binary
 Langkah 1 = 0+7/2  = 35 | x [3] = 45
                      If (23 < = 45)
Ambil sisi kiri
16
17
23

Langkah 2 = 0+2 = 2/2 = 1 x [1] = 17
                      If (23 > = 17) ambil sisi kanan
23

Langkah 3 = If (23 = 23)
Tampilkan 23

v  Cara ke tiga mencari Squential kriteria = 78
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] = y = ketemu x [5]

Binary
0 + 7/2 = 3,5 = 3      x [3] = 45
16
17
23
45
50
78
99
100

0 + 5/2 = 2,5 = 2       x [2]
50
78
99
100


contoh Programnya :
<html>
    <head>
        <title>Struktur Data Linear Searching</title>
        <script>
            var dataArray = [2,4,16,22,28,3,27,89,77,43,12,36,44,50,54,58,66,82,86,90,];
            document.write("Data Array:");
            document.writeln(dataArray.toString());

            function LinearSearch(DataCari)
            {
                var Start = performance.now();

                for(var i=0;i<dataArray.length;i++)
                {
                    if(dataArray[i] == DataCari)
                    {
                        document.getElementById("lblHasil").innerHTML = "Data ditemukan pada indeks ke-"+i;
                        break;
                    }
                    else
                    {
                        document.getElementById("lblHasil").innerHTML = "Data tidak ditemukan";
                    }
                }

                var Stop = performance.now();
                var TotWaktu = parseFloat((Stop-Start)/1000).toFixed(5);
                document.getElementById("lblWaktu").innerHTML = "waktu Komputasi:"+TotWaktu+"detik";
            }
           
        </script>
    </head>
    <body>
        <form>
            <p>
                <label>Data Yang Dicari</label><input type="text" id="txtCari" size=10>
                <input type="button" value="Tampil Data"
                    onclick="LinearSearch(txtCari.value)"><br>
                <label id="lblHasil"></label><br>
                <label id="lblWaktu"></label><br>
            </p>
        </form>
    </body>
</html>

maka akan tampil seperti ini
Struktur Data Linear Searching





Sekian penjelasan dari saya  Terimakasih


Thursday 15 February 2018


Assalamualaikum wr.wb

Hai teman-teman kali ini saya membahas Tentang “Nested Loop” . Apa sih Nested Loop itu?
Perulangan Bersarang (Nested Loop)" adalah struktur perulangan yang berada didalam struktur perulangan lainnya. Pada umumnya, struktur perulangan yang berada didalam struktur perulangan lainnya memiliki hubungan yang saling terkait dalam menyelesaikan sebuah kasus komputasi. Jika struktur perulangan luar (struktur perulangan yang menampung struktur perulangan lain didalamnya) tidak memiliki hubungan terkait dan tidak memiliki kepentingan dalam melakukan proses komputasi, sebaiknya jangan lakukan perulangan bersarang (nested loop), karena hanya akan menghabiskan waktu eksekusi yang sia-sia dan program berjalan tidak optimal. 

Contoh : for (int i= 0 ; i < = 5 ;i++)
               {
                   For (int j= 0 ; I < =2 ; j++)
                {
                        X [i,j] = i + j ;

i adalah baris dan j merupakan kolom lebih jelasnya perhatikan tabel dibawah ini

0
1
2
1
2
3
2
3
4
3
4
5
4
5
6
5
6
7
 i = 5 maksudnya adalah angka 0 -5
j= 2 maksudnya adalah angka 0 – 2
x [0,0] berarti 0 + 0 = 0;
x [0,1] berarti 0+1 = 1 ;
x [1,2] berarti 1 +2 = 3
dan seterusnya
ket : [0,0]
angka pertama adalah baris dan kedua adalah kolom.
Berarti baris ke 0 dan kolom ke 0 = 0            

Sekian penjelasan dari saya terimakasih 😊

Monday 12 February 2018


Assalamualaikum wr.wb

Array merupakan sebuah variable yg menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan di akses melalui 2 indeks atau subskrip yaitu indeks baris dan indeks kolom. Array 2 dimensi juga sebelum digunakan haruslah dilakukan sebuah deklarasi , dan bentuk umum untuk pendeklarasian array 2 dimensi ini adalah sebagai berikut.
Tipe_data    nama_var_array
[banyak baris] [banyak kolom];

Artinya : -   tipe_data              : menyatakan                                         tipe data elemen array
          -        banyak_baris       : menyatakan maksimum banyaknya suatu baris
        -        banyak_kolom     : menyatakan maksimum banyaknya suatu kolom

Contoh  : 
                   Kolom X                                                      

12

10
50
25



5

                  Kolom Y

15
16
17

111
33
55
99


                                                                               
Jadikan kolom diatas seperti kolom dibawah ini Kolom x  dan  Kolom Y

                       Kolom X

12
10
5
16
25
50
17
55
111

                     Kolom Y

111
10
17
25
33
33
55
99
50


Caranya : 
(1) X                                                                
X [0,2] ke X [0,1]   artinya baris ke 0 kolom ke 2 ke baris ke 0 kolom ke 1
                                       
X [1,0] ke X [1,2]                        
X [2,2] ke X [0,2]                                          
Y [0,1] ke X [1,0]
Y [0,2] ke X [2,0]                                          
Y [2,0] ke X [2,1]
Y [1,1] ke X [2,2]
       
(2)  Y            

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