diff --git a/searching/binarys.c b/searching/binarys.c new file mode 100644 index 00000000..9e64089b --- /dev/null +++ b/searching/binarys.c @@ -0,0 +1,38 @@ + #include + + 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; + }