BAB II TINJAUAN PUSTAKA II.1. Searching Pencarian (searching) merupakan proses yang sering digunakan dalam pengelolaan data. Proses pencarian adalah menemukan nilai (data) tertentu di dalam sekumpulan data yang bertipe sama (baik bertipe dasar atau bertipe bentukan). Search algoritma adalah algoritma yang menerima argument A dan mencoba untuk mencari record yang mana keynya adalah A. Algoritma bisa mengembalikan nilai record, atau pointer ke record. Record sendiri adalah tipe data yang terdiri atas kumpulan variabel disebut field. Sequential search (penelusuran sequential) yaitu proses mengunjungi melalui suatu pohon dengan cara setiap simpul di kunjungi hanya satu kali yang disebut dengan tree transversal / kunjungan pohon. Data dapat disimpan secara temporer dalam memori utama atau disimpan secara permanen di dalam memori sekunder (tape atau disk). Di dalam memori utama, struktur penyimpanan data yang umum adalah berupa larik atau tabel (array), sedangkan di dalam memori sekunder berupa arsip (file). Aktivitas yang berkaitan dengan pengolahan data ini sering di dahului dengan proses pencarian. Sebagai contoh, untuk mengubah (update) data tertentu, langkah pertama yang harus dilakukan adalah mencari keberadaan data tersebut di dalam kumpulannya. Aktivitas yang awal sama juga dilakukan pada proses penambahan (insert) data yang baru. Proses penambahan data dimulai dengan 7 8 mencari apakah data yang ditambahkan sudah terdapat di dalam kumpulan. Jika sudah dan mengasumsikan tidak boleh ada duplikasi data, maka data tersebut tidak perlu ditambahkan, tetapi jika belum ada, maka tambahkan. Algoritma pencarian yang akan dibicarakan adalah algoritma pencarian yang paling sederhana yaitu pencarian beruntun atau sequential search. Metode pencarian yang bisa kita pergunakan tergantung dari: 1. Bagaimana urutan nilai-nilai di dalam kumpulan nilai. 2. Bagaimana struktur data yang dipergunakan untuk menyusun nilai-nilai tersebut. Kita dapat mempergunakan metode pencarian beruntun atau linear (sequential search atau linear search) jika: 1. Nilai-nilai tersebut belum berurutan. 2. Nilai-nilai tersebut sudah berurutan, tetapi struktur data yang dipergunakan untuk menyimpan nilai-nilai tersebut adalah senarai berkait (linked list, akan dibahas dalam kuliah-kuliah mendatang). Kita dapat mempergunakan baik metode pencarian beruntun (sequential), jika: 1. Nilai-nilai tersebut sudah tersusun secara berurutan, dan 2. Nilai-nilai tersebut disusun ke dalam bentuk larik (array) atau struktur data sejenis yang masing-masing nilai tersimpan dalam bagian-bagian yang mempunyai indeks yang unik dan indeksnya berurutan dari yang paling kecil hingga yang paling besar (bersifat ordinal). 9 II.2. Metode Sequential Metode Sequential merupakan suatu proses pencarian data dengan metode pencarian langsung. Ini dilakukan dengan cara mencocokkan data yang akan dicari dengan semua data yang ada dalam kelompok data, membandingkan setiap elemen larik satu persatu secara beruntun. Konsep yang digunakan dalam metode ini adalah membandingkan data-data yang ada dalam kumpulan tersebut, mulai dari elemen pertama sampai elemen di temukan, atau sampai element terakhir. Terdapat dua versi pencarian beruntun dalam sebuah larik yaitu : 1. Aksi pembandingan dilakukan di awal pengulangan, tepatnya pada kondisi pengulangan. 2. Aksi pembandingan dilakukan di dalam badan pengulangan. Contoh : Diketahui sebuah tabel TabInt [1..N] yang telah berisi nilai dengan tipe integer. Jika pada tabel tersebut akan dicari apakah harga/nilai X ada dalam TabInt tersebut, maka pencarian yang akan dilakukan adalah membandingkan setiap nilai pada tabel tersebut dengan nilai X yang dicari. Proses tersebut dilakukan secara berurutan mulai dari elemen pertama sampai ketemu, atau sampai elemen terakhir. Apabila nilai X ditemukan maka harga/nilai indeks I di mana X diketemukan pertama kalinya akan bernilai tidak sama dengan nol (I ¹ 0), I diberi harga 0 jika pencarian tidak ketemu. Pencarian segera dihentikan begitu harga pertama diketemukan. 10 Langkah-langkahnya : 1. i ← 0 2. ketemu ← false 3. Selama (tidak ketemu) dan (i <= N) kerjakan baris 4 4 Jika (Data[i] = x) maka ketemu ← true, jika tidak i ← i + 1 5 Jika (ketemu) maka i adalah indeks dari data yang dicari, jika tidak data tidak ditemukan secara manual contoh : Data : 20 25 35 79 80 90 Data yang dicari 35 iterasi data keterangan. Tabel II.1. Data Pencarian dengan Metode Sequential Iterasi Data keterangan 0 20 25 35 79 80 90 Data awal 1 20 25 35 79 80 90 Belum cocok 2 20 25 35 79 80 90 Belum cocok 3 20 25 35 79 80 90 Data ditemukan Sumber : //http: hack.spyrozone.net/0202_Struktur_Data_Pencarian_searching Ket : angka yang ditebalkan maksudnya angka yang diseleksi. Langkah- langkahnya : Di bawah ini merupakan fungsi untuk mencari data menggunakan pencarian sequential. int SequentialSearch(int x) { int i = 0; 11 bool ketemu = false; while ((!ketemu) && (i < ketemu =" true;"> II.3. Flowchart Sebelum membuat suatu program atau system, terlebih dahulu kita harus membuat perancangan alur dari konsep program, disini penulis membuat programnya dengan menggunakan Flowchart. Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut. Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart : Tabel : II.2 Simbol-simbol flowchart Sumber :: Metode Desain dan Analisis Sistem. 12 II.4. Pemograman JAVA Java menurut devinisi dari Sun adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone atau pun pada lingkungan jaringan. Java adalah generasi kedua dari Java platform. Java berdiridi atas sebuah mesin interpreteur yang di beri nama Java Virtual Machin (JVM). JVM inilah yang akan membaca bytecode dalam file. Class dari suatu program sebagai representasi langsung program yang berisi bahasa mesin. Oleh karena itu, bahasa java di sebut sebagai bahasa pemograman yang portable , karena dapat dijalankan pada berbagai sistem operasi, asalkan pada sistem operasi tersebut terdapat JYM. Agar sebuah program Java dapat dijalankan, maka File dengan ekstensi Java harus dikompilasi menjadi file bytecote. Java memiliki beberapa versi library atau teknologi yang disebut juga sebagai edisi dari bahasa pemograman Java. Tiga edisi utama dan library tesebut adalah Micro, Standart, dan Interface J2ME (Java 2 Micro Edition) merupakan edisi library yang dirancang untuk digunakan pada divise seperti pager dan mobile phone. J2SE (Java 2 Standart Edition) merupakan edisi library Java yang dirancang untuk membuat sebuah aplikasi dekstop atau applet pada web browser. J2EE (Java 2 Enterprise Edition) merupakan edisi library yang dirancang untuk membuat sebuah aplikasi interprice yang memerlukan antar muka dengan sumber data atau (data source) atau dapat pula dikatakan bahwa J2EE adalah kelompok yang lebih besar dengan J2SE didalamnya. 13 II.5. Netbeans NetBeans adalah Integrated Development Environment (IDE) berbasiskan Java dari Sun Microsystems yang berjalan di atas Swing. Swing sebuah teknologi Java untuk pengembangan aplikasi Desktop yang dapat bejalan di berbagai macam platforms seperti Windows, Linux, Mac OS X and Solaris. Suatu IDE adalah lingkup pemograman yang diintegrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan pembangun Graphic Use Interface (GUI), suatu text atau kode editor, suatu compiler atau interpreteur dan suatu debugger. Netbeans merupakan software development yang Open Source, dengan kata lain software ini di bawah pengembangan bersama, bebas biaya A.K.A. Kita akan mendapatkan tools yang kita butuhkan untuk membuat professional desktop, enterprise, web, and mobile applications dengan Java language, C/C++, dan bahkan dynamic languages seperti PHP, JavaScript, Groovy, dan Ruby. Di bawah ini adalah cara untuk menggunakan NetBeansIDE 7.0 : Gambar.II.1. Tampilan Awal JavaApplication-NetBeans IDE7.0 Sumber :: 7 Project Aplikasi Dengan Java. 14 Terlebih dahulu di install software NetBeansIDE 7.0 di komputer anda, seperti di bawah ini, Kemudian ikuti petunjuk di bawah ini. Gambar.II.2. Program JavaApplication NetBeans Sumber :: 7 Project Aplikasi Dengan Java. Buka aplikasi JavaApplication kemudian klik New Project, Setelah muncul project baru lalu ketikkan nama project yang akan di buat kemudian pilih folder yang akan di buat project, seperti di bawah ini : Gambar.II.3. Project JavaApplication Sumber :: 7 Project Aplikasi Dengan Java. 15 Lalu kemudian, buatlah form untuk mendesign game yang akan di buat dengan cara, klik kanan pada project java application kemudian buatlah design yang kamu inginkan seperti di bawah ini : Gambar.II.4. Lembar Kerja JavaApplication NetBeans 7.0 Sumber :: 7 Project Aplikasi Dengan Java. Lalu buatlah design program, bentuk dari suatu program kemudian, jalankan program yang telah dibuat dengan Klik Run atau F5.