Sequential Search C++ #1 - nblognlife

Sequential Search C++ #1

Contoh Program Sequential Search C++

            Setelah sebelumnya saya membahas sorting pada C++ menggunakan Bubble, Insertion, dan Selection Sort. Kali ini saya akan membahas searching (pencarian)  dengan menggunakan metode Sequential Search(Linear Search) pada C++.
            Sequential Search atau juga dikenal dengan Linear Search merupakan metode pencarian data yang paling mudah. Metode ini membaca satu per satu data yang mulai dari indek kecil ke indek besar, atupun sebaliknya.

Berikut ini program C++ untuk mencari data dengan metode Sequential Search() :
/*
      Mencari data dengan sequential search
      Compiler : Microsoft Visual Studio 2012
      N.N. Blog
*/

#include <iostream>
using namespace std;
#include <conio.h>
#include <iomanip>

int main()
{
      int dataku[10] = {7,9,2,10,15,4,5,6,13,11};
      int caridata, i, flag = 0;

      cout<<"PENCARIAN DENGAN SEQUENTIAL SEARCH"<<endl;
      cout<<"----------------------------------"<<endl;
      cout<<"Data   : ";
            for(int n=0; n<10; n++)
                  cout<<setw(4)<<dataku[n];
      cout<<endl;

      cout<<"\nMasukkan data yang ingin Anda cari : ";
      cin>>caridata;

      //cari dengan metode sequential search()
      for(i = 0; i<10; i++)
      {
            if(dataku[i]==caridata)
            {
                  flag = 1;
                  break;
            }
      }

      //cetak hasil
      if(flag==1)
            cout<<"Data ditemukan pada indek ke-"<<i<<endl;
      else
            cout<<"Data tidak ditemukan"<<endl;
     
      _getche();
      return EXIT_SUCCESS;
}

Output 
PENCARIAN DENGAN SEQUENTIAL SEARCH
----------------------------------
Data  :  7  9  2  10 15  4  5  6  13  11

Masukkan data yang ingin Anda cari : 13
Data ditemukan pada indek ke-8

Algoritma & penjelasan  :
1)    dari array index ke-0, dicocokan dengan bilangan yang dicari (13), karena tidak sama maka menuju index selanjutnya
2)    pada array index ke-1dicocokan dengan bilangan yang dicari (13), karena tidak sama maka menuju index selanjutnya
3)    pada array index ke-2dicocokan dengan bilangan yang dicari (13), karena tidak sama maka menuju index selanjutnya
.
.
.
.
.
 9)   pada array index ke-8, ternyata sama dengan bilangan yang dicari (13), maka data ditemukan kemudian keluar dari looping pencarian.

·         Indeks awal pada C++ dimulai dari 0(nol)
·      Saat berada pada index ke-8 maka kondisi if akan terpenuhi sehingga semua penyataan yang ada di dalam blok if akan dijalankan : 
flag akan diberi nilai 1 -> mengindikasikan data ditemukan, pemberian nilai 1 akan digunakan pada kondisi untuk mencetak string data ditemukan atau tidak.
break -> digunakan untuk keluar dari suatu blok kode, disini break digunakan untuk keluar dai perualangan for


Klik Like & Share jika postingan ini bermanfaat
Apa tanggapan Anda?

Berikan tanggapan Anda melalui kolom komentar yang telah disediakan.
- Gunakan bahasa yang sopan;
- Saat menjadikan postingan pada blog ini sebagai referensi, jangan lupa mencantumkan sumbernya (link dari blog ini).

Jika blog ini bermanfaat jangan lupa memberikan 'like' atau 'share' untuk mendapatkan update terbaru.

Terima kasih

4 Responses to "Sequential Search C++ #1"

  1. kalau indeks awalnya ingin dimulai dari indeks 1 gimana??

    ReplyDelete
    Replies
    1. @Leo Potato
      Maaf saya baru buka blog ini.

      Berbicara tentang indeks, pada C++ dan kebanyakan bahasa pemrograman lainnya, indeks selalu dimulai dari 0. Indeks ke-0 mewakili data pertama pada array, indeks ke-1 mewakili data kedua pada array, indeks ke-2 mewakili data ketiga pada array dan seterusnya.

      Jika pencarian dimulai dari indeks ke-1, misalkan dengan mengubah sedikit code di atas menjadi 'for(i = 1; i<10; i++)', maka yang akan terjadi adalah proses pencocokan akan dimulai dari data kedua pada array, yaitu 9. Sedangkan data pertama (indeks ke-0) akan di lewati. Sehingga apabila data yang kita cari adalah 7, maka data tidak akan ditemukan meskipun data tersebut sebenarnya terdapat di dalam array 'dataku'.

      Semoga bermanfaat :)

      Delete
  2. kalau pencarian berdasarkan karakter bagaimana gan kode nya contoh karakter nya : a,b,c,e,d,g

    ReplyDelete
    Replies
    1. @Aqsal Herdi Marta
      Tinggal diganti tipe datanya (int->char). Untuk tipe data array "dataku" dan tipe data "caridata" diubah ke dalam bentuk char. Selamat mencoba!

      Delete