Rabu, 26 Juni 2013

Tutorial Binary Search C++

2. Binary Search
    Menu :
    1. Masukkan berapa banyak data
    2. Cari Data



program:

//Bella Yulianita
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
using namespace std;
int binary_s(int array[],int size,int elemen);
int main()
{
int size,a,c;
int data[99];
z:
printf("=======Binary Search=============\n");
printf("Menu :\n1.)Masukan data\n2.)Cari Data\nMasukan Pilihan :");scanf("%d",& a);
if(a==1)
{
printf("mau masukan berapa data : ");scanf("%d", & size);
for(int b=0;b<size;b++)
{
printf("masukan data ke-%d :",b+1);scanf("%d",&data[b]);
}
}
if(a==2)
{
cout<<"Data Array"<<endl;
int i;
for(i=0;i<size;i++)
cout<<data[i]<<" ";
cout<<endl<<endl<<"masukkan data yang ingin anda cari:";
int cari;
cin>>cari;
//pencarian
int hasil;
hasil=binary_s(data,size,cari);
if(hasil==0)
{
cout<<"Nilai tidak ditemukan\n";
}
else
{
cout<<"Nilai ditemukan\n";
printf("Yaitu di Indeks ke-%d \n",hasil);
}
}
goto z;
}
int binary_s(int array[],int size,int elemen)
{
int awal=0;
int akhir=size-1;
int c;
int nilaiTengah=(awal+akhir)/2;
while(nilaiTengah<=size &&awal<=akhir)
{
nilaiTengah=(awal+akhir)/2;
if(array[nilaiTengah]==elemen)
return nilaiTengah;
else if(elemen<array[nilaiTengah])
akhir=nilaiTengah-1;
else
awal=nilaiTengah+1;
}
return 0;
}

outputnya :

Silahkan dicoba :)

0 komentar:

Posting Komentar

© Bella Yulianita 2012 | Blogger Template by Enny Law - Ngetik Dot Com - Nulis