Categories

# ISC 2020 Computer Science Theory Binary Search Program

Design a class BinSearch to search for a particular value in an array.

Some of the members of the class are given below:
Class name: BinSearch
Data members/instance variables:
arr[]: to store integer elements.
n: integer to store the size of the array.
Member functions/methods:
BinSearch(int num): parameterized constructor to initialize n = num.
void fillArray(): to enter elements in the array.
void sort(): sorts the array elements in ascending order using any standard sorting technique.
int binSearch(int l, int u, int v): searches for the value ‘v’ using binary search and recursive technique and returns its location if found otherwise returns -1.

Define the class BinSearch giving details of the constructor, void fillArray(), void sort() and int binSearch(int, int, int). Define the main() function to create an object and call the functions accordingly to enable the task.

``````import java.io.*;
class BinSearch{
int arr[];
int n;
public BinSearch(int num){
n = num;
arr = new int[n];
}
public void fillArray()throws IOException{
System.out.println("Enter array elements:");
for(int i = 0; i < n; i++)
}
public void sort(){
for(int i = 0; i < n; i++){
for(int j = 0; j < n - 1 - i; j++){
if(arr[j] > arr[j + 1]){
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
public int binSearch(int l, int u, int v){
int mid = (l + u) / 2;
if(v == arr[mid])
return mid;
else if(l > u)
return -1;
else if(v > arr[mid])
return binSearch(mid + 1, u, v);
else
return binSearch(l, mid - 1, v);
}
public static void main(String args[])throws IOException{
System.out.print("Enter array size: ");
BinSearch obj = new BinSearch(num);
obj.fillArray();
obj.sort();
System.out.print("Enter value to be searched: ");
int index = obj.binSearch(0, num - 1, value);
if(index == -1)
else
System.out.println(value + " found at index " + index);
}
}``````

## 4 replies on “ISC 2020 Computer Science Theory Binary Search Program”

Arushi Versica Davissays:

This program is giving the wrong output bro. Kindly run it by yourself