Computer Science, asked by talibkhan0845, 1 year ago

Write a program in C++ to read an array of stored integers search for value using binary search method if the element is found print its location easily print element not found

Answers

Answered by mnakhil
2

#include <stdio.h>

 

int main()

{

  int c, first, last, middle, n, search, array[100];

 

  printf("Enter number of elements\n");

  scanf("%d",&n);

 

  printf("Enter %d integers\n", n);

 

  for (c = 0; c < n; c++)

     scanf("%d",&array[c]);

 

  printf("Enter value to find\n");

  scanf("%d", &search);

 

  first = 0;

  last = n - 1;

  middle = (first+last)/2;

 

  while (first <= last) {

     if (array[middle] < search)

        first = middle + 1;    

     else if (array[middle] == search) {

        printf("%d found at location %d.\n", search, middle+1);

        break;

     }

     else

        last = middle - 1;

 

     middle = (first + last)/2;

  }

  if (first > last)

     printf("Not found! %d isn't present in the list.\n", search);

 

  return 0;  

}


Note use only if the array is oriented in ascending order for the above case

Similar questions