import java.io.*; class search { String str; int key,size,seaArr[],bottom,top,middle; public void getdata() { System.out.print(\"Enter how many data you want to enter : \"); System.out.flush(); try{ BufferedReader obj=new BufferedReader(new InputStreamReader(System.in)); str=obj.readLine(); size=Integer.parseInt(str); seaArr=new int[size]; System.out.println(\"\\nEnter Data in Sequential Order\"); for(int i=0;i<size;i++) { System.out.print(\"Enter element at \"+(i+1)+\"th position : \"); System.out.flush(); str=obj.readLine(); seaArr[i]=Integer.parseInt(str); } } catch(Exception e) {} } public int BinSrch() { System.out.println(\"=====BINARY SEARCH=====\\n\"); getdata(); System.out.print(\"\\nEnter Search Key : \"); System.out.flush(); try{ BufferedReader obj=new BufferedReader(new InputStreamReader (System.in)); str=obj.readLine(); key=Integer.parseInt(str); bottom=0; top=size-1; while(top>=bottom) { middle=(top+bottom)/2; if(seaArr[middle]==key) { return(middle+1); } else { if(seaArr[middle]>key) top=middle-1; else bottom=middle+1; } } } catch(Exception e) {} return(0); } } class BinSea { public static void main(String args[]) { search o1 = new search(); int result; result=o1.BinSrch(); if(result==0) System.out.println(\"\\nSearch Not Found\"); else System.out.println(\"\\nSearch is Located at \"+result+\" Position\"); } }