mirror of
https://github.moeyy.xyz/https://github.com/TheAlgorithms/C.git
synced 2023-10-11 15:56:24 +08:00
commit
c6583d34d2
38
searching/binarys.c
Normal file
38
searching/binarys.c
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
#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;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user