#include <iostream>
using namespace std;
int search(int *a , int low , int high , int key)
{
int i = (high - low)/2;
while (i >= 0)
{
i = (high - low)/2;
if (a[i] == key)
{
return i;
}
if (key < a[i])
{
high = i - 1;
}
if (key > a[i])
{
low = i + 1;
high = high + i;
}
}
}
int Search(int *a , int low , int high ,int key)
{
int i = (high - low)/2;
if (key == a[i])
{
return i;
}
if (key < a[i])
{
return Search(a , low , i - 1 , key);
}
if (key > a[i])
{
return Search(a , i + 1 , high + i , key);
}
}
void main()
{
int a[9] = {1,2,3,4,5,6,7,8,9};
for (int i = 1 ; i <= 9 ;i ++)
{
cout << Search(a , 0 , 8 , i) << endl;;
cout << search(a , 0 , 8 , i) << endl;
}
}