Cari Blog Ini

Kamis, 02 Mei 2019

BINERY C++ ( SEARCHING )


SEARCHING C++





1.    Pengertian Searching

Searching adalah mencari data yang dibutuhkan. Searching dalam pemrograman bisa dilakukan untuk mencari data yang ada di dalam memory komputer.Dalam kehidupan sehari-hari kita juga sering melakukan kegiatan searching seperti mencari data/informasi yang ada dalam internet. Ada beberapa metode yang dapat digunakan untuk searching, ada yang dinamakan:

·             Sequential Search

·             Binary Search

2.  Binary Search

Binary Search merupakan metode pencarian dimana data harus diurutkan terlebih dahulu sebelum dilakukan proses pencarian. Pada metode pencarian ini, data dibagi menjadi dua bagian untuk setiap tahap pencarian.

Algoritma binary search :

  1. Data diambil dari posisi 1 sampai posisi akhir n
  2. Kemudian cari posisi data tengah dengan rumus: (posisi awal + posisi akhir) / 2
  3. Kemudian data yang dicari dibandingkan dengan data yang di tengah, apakah sama atau lebih kecil, atau lebih besar?
  4. Jika lebih besar, maka proses pencarian dicari dengan posisi awal adalah posisi tengah + 1
  5. Jika lebih kecil, maka proses pencarian dicari dengan posisi akhir adalah posisi tengah – 1
  6. Jika data sama, berarti ketemu.

Berikut Program dari binary search :



#include

using namespace std;

int main ()

{

    int d,i,awal,akhir,tengah,bin;

    int data[10];



    cout << "Masukkan Jumlah Data = "; cin >> d;

    for (i=0; i

    {

        cout << "Data Ke- "<> data[i];

    }

    cout << "Mencari data dengan binary = "; cin >>  bin;

        awal=0;

        akhir=d-1;

        do

        {

            tengah=(awal+akhir)/2;

            if(bin

                akhir=tengah-1;

            else

                awal=tengah+1;

        }

        while ((akhir>=awal)&&(data[tengah]!=bin));

        if(data[tengah]==bin)

        {

            cout << "Data " << bin << " Pada Posisi " << tengah+1;

        }

        else

            cout << "Data Tidak Ditemukan" << endl;

            cout << endl;



}



Hasil running :




Sebuah Program dengan binery dan sequential :



 #include



using namespace std;



int main()

{

    int n, awal, akhir, data, tengah, i;

    string studio[10], pil, x, bangku[10];



    cout << " |==========================================| "<< endl;

    cout << " |=========== BIOSKOP UCUYDI xIx ===========| "<< endl;

    cout << " |==========================================| "<< endl << endl << endl;

    cout << " Pilihan Metode pencarian :"<

    cout << " 1/A. Sequential " << endl;

    cout << " 2/B. Binery " << endl;

    kembali:

    cout <<" Masukkan pilihan : ";cin >> pil;

    if (pil=="A" || pil=="1")

    {

        cout << " Anda memilih metode Sequential! " << endl;

        cout << " Banyak data adalah : ";cin >> data;

        cout << endl;

        for(i=0; i

        {

            cout << "++ Studio ke - "<> studio[i];

            cout << "++ Bangku ke - "<<" : ";cin >> bangku[i];

            cout << endl;

        }

        cout << " Masukkan data yang ingin dicari : ";cin >> x;

        i=0;

        ulang:

        if (i!=data)

        {

            if(studio[i]==x)

            {

                cout << " ++ Studio yang anda cari ditemukan di data :" << i+1 << endl;

                cout << " ++ Urutan Bangku yang anda dapat :" << bangku[i];

            }

            else if (bangku[i]==x)

            {

                cout << " ++ Bangku yang anda cari ditemukan di data :" << i+1 << endl;

                cout << " ++ Studio yang anda dapat :"<

            }

            else

            {

                i++;

                goto ulang;

            }

        }

        else

        {

            cout << "++ Studio atau nama yang anda cari tidak ditemukan";

        }

    }

        else if (pil=="B" || pil=="2")

        {

            cout << "++ Anda memilih Binery!" << endl;

            cout << "++ Masukkan jumlah data : ";cin >> n;

            cout << endl;

            for(int i=0; i

            {

                cout << "++ Studio ke - "<> studio[i];

                cout << "++ Bangku ke - " << " : "; cin >> bangku[i];

                cout << endl;

            }

            cout << "++  Masukkan bangku yang dicari : ";cin >> x;

            awal=0;

            akhir=n-1;

            do

            {

                tengah=(awal + akhir)/2;

                if(x

                {

                    akhir = tengah -1;

                }

                else

                {

                    awal = tengah +1;

                }

            }

            while((akhir>=awal)&&(bangku[tengah]!=x));

            {

                if(x == bangku[tengah])

                {

                    (cout << " data " << x << " Pada posisi : " << tengah+1);

            }



            else

            {

                cout << "++ Bangku atau Studio tidak ditemukan";

            }

        }

    }

    return 0;

}



Hasil Running :





DAFTAR PUSTAKA




RIDHO RAMADHAN

1801301095

TERIMAKASIH!!

Senin, 22 April 2019

SEARCHING C++ & Program


SEARCHING C++


1.    Pengertian Searching
Searching adalah mencari data yang dibutuhkan. Searching dalam pemrograman bisa dilakukan untuk mencari data yang ada di dalam memory komputer.Dalam kehidupan sehari-hari kita juga sering melakukan kegiatan searching seperti mencari data/informasi yang ada dalam internet. Ada beberapa metode yang dapat digunakan untuk searching, ada yang dinamakan:
·             Sequential Search
·             Binary Search

2 . Sequential Search
Sequential Search merupakan metode pencarian data dalam array dengan cara membandingkan data yang dicari dengan data yang ada di dalam array secara berurutan. Pencarian data dengan Metode Sequential Search efektif untuk mencari data yang dalam posisi yang tidak terurut atau acak.
Prosesnya bisa dijelaskan seperti berikut:
1.    Menentukan data yang dicari
2.    Membaca data array satu per satu secara sekuensial
3.    Mulai dari data pertama sampai dengan data terakhir, kemudian data yang dicari tadi dibandingkan dengan masing-masing data yang ada di dalam array.
a. Jika data yang dicari ditemukan maka kita dapat membuat statement bahwa data telah temukan.
b. Jika data yang dicari tidak ditemukan maka kita dapat membuat statement bahwa data telah temukan.

3. Program Sequential

#include < iostream >
using namespace std;
int main()
{
    int n, nilai[10], i, cnlai;
    string nama[10], cnm ;
    char pil;
    cout << "=======================================" << endl;
    cout << " MAHASISWA TEKNIK INFORMATIKA POLITALA " << endl;
    cout << "=======================================" << endl;
    cout << " Jumlah Mahasiswa 2C : ";cin >> n;
    cout << endl;
    for (i=0 ;i
    {
     cout << " Nama  mahasiswa ke- "<> nama[i];
     cout << " Nilai mahasiswa ke- "<> nilai[i];
     cout << endl;
    }
    kembali:
    cout << " Pilihlah [1] untuk nama Atau [2] untuk nilai  : ";cin >> pil;
    switch(pil)
    {
    case '1':
        {
            cout << " Masukkan Nama yang ingin dicari : ";cin >> cnm;
            break;
        }
    case '2':
        {
            cout << " Masukkan Nilai yang ingin dicari : ";cin >> cnlai;
            break;
        }
        default:
        {
            cout << "Nama atau Nilai tidak di temukan! " << endl;
            goto kembali;
            break;
        }
    }
if (pil=='1')
{
    i=0;
    ulang:
    if(i!=n)
    {
        if(nama[i]==cnm)
        {
        cout << " Nilai mahasiswa : " << nilai[i] << endl;
        cout << " Data di temukan pada data ke- " << i+1;
        }
        else
        {
            i++; goto ulang;
        }
    }
    else
        cout << "data tidak ditemukan! ";
    }
    if(pil=='2')
    {
    i=0;
    ulang1:
    if(i!=n)
    {
        if(nilai[i]==cnlai)
        {
        cout << " Nama mahasiswa : " << nama[i] << endl;
        cout << " Data di temukan pada data ke- " << i+1;
        }
        else
        {
            i++; goto ulang1;
        }
    }
        else
        cout << " Data tidak ditemukan! " << endl;
    }
}

Hasil running :