Tampilkan postingan dengan label Sequensial Search. Tampilkan semua postingan
Tampilkan postingan dengan label Sequensial Search. Tampilkan semua postingan

Sabtu, 07 Juli 2012

Program Sequensial Search (String) Di C++

Berikut program sequensial untuk mencari data berupa nama (string) berdasarkan algoritma:
  1. Input seluruh data ke dalam array
  2. Input data yang dicari
  3. Tentukan nilai flag sama dengan nol.
  4. Jika setiap nilai yang dicari sama dengan data yang terdapat dalam array, maka nilai flag akan bertambah satu.
  5. Jika nilai flag tidak sama dengan nol, maka data ditemukan. Sedangkan jika nilai flag sama dengan nol, maka data tidak ditemukan. 
    Program


Sequensial Search (String).cpp
/* Program : Sequensial Search (String)
    Karya   : blog-sharings.blogspot.com */



#include <iostream.h>
#include <conio.h>
#include <string.h>



main()
{
    int no,jd,flag;
    char data[10][50],cari[10];



   cout<<"\n\t\t ******************************************* \n";
   cout<<"\t\t |  \t\t\t\t\t   | \n";
   cout<<"\t\t | \t\tProses Pencarian \t   | \n";
   cout<<"\t\t | Menggunakan Algoritma Sequensial Search | \n";
   cout<<"\t\t |  \t\t\t\t\t   | \n";
   cout<<"\t\t ******************************************* \n\n\n";



    cout<<" Input Jumlah Data  : ";
    cin>>jd;



    cout<<endl;
    for (no=0;no<jd;no++)
    {
        cout<<" Input Data Ke-"<<(no+1)<<"    : ";
        cin>>data[no];
    }



   cout<<endl;
    cout<<" Input Nilai Dicari : ";
    cin>>cari;



    flag=0;
    for(no=0;no<jd;no++)
    {
        if (strcmp (data[no],cari)==0)
       {
          flag++;
       }
    }



    cout<<endl;
    if (flag!=0)
    {
        cout<<" Keterangan         : Data Ditemukan"<<endl;
      cout<<" \t\t      Berjumlah "<<flag<<" Buah";
    }
    else
    {
        cout<<" Keterangan         : Data Tidak Ditemukan";
   }
    getch();
}

Program Sequensial Search Di C++


Postingan ini merupakan implementasi dari Konsep Sequensial Search. Program dibuat menggunakan aplikasi Borland C++ ver. 5.02 berdasarkan algoritma berikut :
  1. Input seluruh data ke dalam array
  2. Input data yang dicari
  3. Tentukan nilai flag sama dengan nol.
  4. Jika setiap nilai yang dicari sama dengan data yang terdapat dalam array, maka nilai flag akan bertambah satu.
  5. Jika nilai flag tidak sama dengan nol, maka data ditemukan. Sedangkan jika nilai flag sama dengan nol, maka data tidak ditemukan.

    Program


    Sequensial Search.cpp
    /* Program : Sequensial Search
        Karya   : blog-sharings.blogspot.com */

    #include <iostream.h>
    #include <conio.h>

    main()
    {
        int no,jd,cari,flag,data[50];

       cout<<"\n\t\t ******************************************* \n";
       cout<<"\t\t |  \t\t\t\t\t   | \n";
       cout<<"\t\t | \t\tProses Pencarian \t   | \n";
       cout<<"\t\t | Menggunakan Algoritma Sequensial Search | \n";
       cout<<"\t\t |  \t\t\t\t\t   | \n";
       cout<<"\t\t ******************************************* \n\n\n";

        cout<<" Input Jumlah Data  : ";
        cin>>jd;

        cout<<endl;

        for (no=0;no<jd;no++)
        {
            cout<<" Input Data Ke-"<<no+1<<"    : ";
            cin>>data[no];
        }

       cout<<endl;

        cout<<" Input Nilai Dicari : ";
        cin>>cari;

        flag=0;
        for(no=0;no<jd;no++)
        {
            if (data[no]==cari)
            {
                flag++;
           }
        }

       cout<<endl;

        if (flag!=0)
        {
            cout<<" Keterangan         : Data Ditemukan"<<endl;
          cout<<" \t\t      Berjumlah "<<flag<<" Buah";
        }
        else
        {
            cout<<" Keterangan         : Data Tidak Ditemukan";
        }

        getch();
     

Konsep Sequensial Search


Metode Sequensial Search adalah suatu teknik pencarian data dalam array (1 dimensi) yang akan menelusuri semua elemen-elemen array dari awal sampai akhir, dimana data-data tidak perlu diurutkan terlebih dahulu sebelum melakukan pencarian. 
 
Kemungkinan terbaik (best case) dalam pencarian sequensial adalah jika data yang dicari terletak di indeks array terdepan (elemen array pertama) sehingga waktu yang dibutuhkan untuk pencarian data sangat pendek (minimal). Kemungkinan terburuk (worst case) adalah jika data yang dicari terletak di indeks array terakhir (elemen array terakhir) sehingga waktu yang dibutuhkan untuk pencarian data sangat lama (maksimal). 
 
Berikut ilustrasi langkah-langkah pencarian dengan menggunakan sequensial search dengan menggunakan tabel. Misalnya dalam suatu array dengan nilai {3,1,7,2,3,4} dan array dimulai dari 0, serta nilai yang dicari adalah nilai 3. Program akan mencari hingga akhir data. Jika didalam array terdapat nilai 3, maka variabel flag akan di beri nilai 1 dengan nilai awal (diinisialiasasi) dengan nilai 0. Berikut penjelasannya dalam bentuk tabel :



Hasil dari variabel flag ini akan menentukan apakah data ditemukan atau tidak. Jika nilai flag lebih dari 0, maka data ditemukan. Sebaliknya jika nilai flag sama dengan 0, maka data tidak ditemukan.

Untuk lebih jelasnya lagi perhatikan algoritma deskriptif pencarian sequensial.
  1. Input seluruh data ke dalam array
  2. Input data yang dicari
  3. Tentukan nilai flag sama dengan nol.
  4. Jika setiap nilai yang dicari sama dengan data yang terdapat dalam array, maka nilai flag akan bertambah satu.
  5. Jika nilai flag tidak sama dengan nol, maka data ditemukan. Sedangkan jika nilai flag sama dengan nol, maka data tidak ditemukan.

Berbicara tentang penerapan dalam pemrograman, berikut penerapan pencarian sequensial pada beberapa bahasa pemrograman.
  • PHP
  • Pascal
  • Perl
  • Python
  • Javascript

Referensi :
allaboutalgoritma.blogspot.com