// Steve J. Hodges // CS19: C++ Programming // binarySearch #include using namespace std; // binary search - return pos of key in array int binarySearch(int [], const int, int); main(){ const int ASIZE=17; int a[]={1,2,3,4,5,6,7,8,9,10,23,34,45,56,67,78,89}; int key; cout << "Key value to search for?"; cin >> key; cout << binarySearch(a, ASIZE, key); } // binary search - return pos of key in array int binarySearch(int a[], const int AS, int key){ int lo=0, hi=AS-1, mid; while( lo <= hi){ mid = (lo+hi)/2; if (a[mid] == key) return mid; if (a[mid] > key){ hi = mid - 1; } else { lo = mid + 1; } } return -1; }