Monday 31 July 2017

code for binary search




#include"stdio.h"
#include"conio.h"
void sort(int[],int);
int binsearch(int[], int, int, int);
int t[7],i;
void main()
{
    for(i=0;i<7;i++)
    {
        printf("Enter number in location %d ",i);
        scanf_s("%d",&t[i]);
    }
   
    sort(t,7);
   
   
}

//Defination


void sort(int a[],int size)
{
    int small,sindex,i,j;
    int position, key, start=0, end=6;
    for(i=0;i<size;i++)
    {
        small=a[i];
        sindex=i;
        for(j=i+1;j<size;j++)
            if(a[j]<small)
            {
                small=a[j];
                sindex=j;
            }
        a[sindex]=a[i];
        a[i]=small;   
        printf("%d ",a[i]);
    }

   printf("\nEnter element to be searched : ");
   scanf("%d", &key);
   position = binsearch(t, key, start, end);
   if (position != -1)
      printf("Number present at %d", (position+1));
   else
      printf("Not Found");
}

//Defination

int binsearch(int a[], int x, int start, int end)
{
   int mid;
   if (start > end)
      return -1;
   mid = (start + end) / 2;
   if (x == a[mid])
      return (mid);
   else if (x < a[mid])
      binsearch(a, x, start, mid - 1);
    else
      binsearch(a, x, mid + 1, end);
}

0 comments: