Selasa, 16 April 2019

Metode Searching sequential di C++


1.    SEARCHING
Pencarian data sering disebut juga dengan istilah table look-up atau storage and retrieval information, adalah suatu proses untuk mengumpulkan sejumlah informasi di dalam pengingat computer dan kemudian mencari kembali informasi yang diperlukan. Searching merupakan proses yang sangat penting dalam pengolahan data. Proses pencarian adalah menemukan nilai (data) tertentu didalam sekumpulan data yang bertipe sama.Sebuah algoritma pencarian dijelaskan secara luas adalah sebuah algoritma yang menerima masukan berupa sebuah masalah dan menghasilkan sebuah solusi untuk masalah tersebut, yang biasanya didapat dari evaluasi beberapa kemungkinan solusi. Algoritma pencarian (searching algorithm) adalah algoritma yang menerima sebuah Kata kunci dan dengan  langkah-langkah tertentu akan mencari rekaman dengan kata kunci tersebut.  Setelah proses pencarian dilaksanakan, akan diperoleh salah satu dari dua kemungkinan, yaitu data yang dicari ditemukan atau tidak ditemukan. Metode pencarian data dapat dilakukan dengan dua cara yaitu pencarian internal.
(internal searching) dan pencarian eksternal (external searching). Pada pencarian internal, semua rekaman yang diketahui berada dalam pengingat komputer sedangakan pada pencarian eksternal, tidak semua rekaman yang diketahui berada dalam pengingat komputer, tetapi ada sejumlah rekaman yang tersimpan dalam penyimpan luar misalnya pita atau cakram magnetis.

Macam-macam Algoritma (searching)
a.    Sequential Searching
Pencarian berurutan sering disebut pencarian linear merupakan metode pencarian yang paling sederhana. Pencarian berurutan menggunakan prinsip sebagai berikut : data yang ada dibandingkan satu per satu secara berurutan dengan yang dicari sampai data tersebut ditemukan atau tidak ditemukan. Pada dasarnya, pencarian ini hanya melakukan pengulangan dari 1 sampai dengan jumlah data. Pada setiap pengulangan, dibandingkan data ke-i dengan yang dicari. Apabila sama, berarti data telah ditemukan. Sebaliknya apabila sampai akhir pengulangan tidak ada data yang sama, berarti data tidak ada. Pada kasus yang paling buruk, untuk N elemen data harus dilakukan pencarian sebanyak N kali pula.
Algoritma pencarian berurutan dapat dituliskan sebagai berikut :
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.

CONTOH PROGRAM
#include <iostream.h>
#include <conio.h>
void main()
{
    int i;
    int cari,ketemu;
  int A[100]  ;
   cout<<"SEQUENSIAL SEARCHING "<<endl;
   cout<<"Masukkan 5 Buah Data : "<<endl;
   cout<<"----------------------------------------"<<aendl;
   for (i=1;i<=5;i++)
   {
   cout<<"Masukkan data ke-"<<i<<" = "; cin>>A[i];
   }
   cout<<endl;
    cout<<"Input bilangan yang dicari : ";
    cin>>cari;
    ketemu=0;
    for(i=0;i<=5;i++)
    {
        if (A[i]==cari)
        {
            ketemu=1;
            cout<<"Data ditemukan pada indeks ke-"<<i;
        }
    }
    if (ketemu==0){
       cout<<"Data tidak ditemukan";
    }

 getch();
}