Tuesday 17 January 2012

binary search method


//program to search an element using binary search
#include<iostream.h>
#include<conio.h>
void main()
{
clrscr();
int arr[10],i,j,temp,flag=0;
cout<<"Enter ten numbers"<<endl;
for(i=0;i<10;i++)
{
cin>>arr[i];
}
//loop to sort array
for(i=0;i<10;i++)
{
for(j=0;j<10-i-1;j++)
{
if(arr[j]>arr[j+1])
{
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
cout<<"The number in sorted form are"<<endl;
for(i=0;i<10;i++)
{
cout<<arr[i]<<endl;
}

cout<<"Enter a number to search"<<endl;
int num;
cin>>num;
int l=0,h=9,mid;
while(l<=h)
{
mid =(l+h)/2;
if (num>arr[mid])
l=mid+1;
else if (num<arr[mid])
h=mid-1;
else
{
flag=1;
cout<<"The number is found at "<<mid+1<<" position"<<endl;
break;
}
}
if(flag==0)
{
cout<<"The number is not found in the list"<<endl;
}
getch();
}

1 comment: