Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Add a testing class that can test all the operations defined in the unsortedArra

ID: 3744934 • Letter: A

Question

Add a testing class that can test all the operations defined in the unsortedArrayAccess class.

Make your testing menu-driven on program P1-1.

package unsortedArrayAccess;

import java.util.*;

public class unsortedArrayAccess

{

public static double[] arr;

private int arraySize;

public unsortedArrayAccess(int scale)

{

arr = new double[scale];

arraySize = 0;

}

public double get(int i)

{

return arr[i];

}

public int search(double Key)

{

int i = 0;

while ((arr[i] != Key) && (i < arraySize))

{

i = i + 1;

}

if (i < arraySize)

{

return i;

}

else

{

System.out.println("There is no such item!");

return -1;

}

}

public void append(double Item)

{

arr[arraySize] = Item;

arraySize = arraySize + 1;

}

public double remove()

{

if (arraySize == 0)

{

System.out.println("There is no item in the array!");

return -1;

}

double x = arr[arraySize - 1];

arraySize = arraySize - 1;

return x;

}

public void deletion(double Key)

{

int k = search(Key);

if (k != -1)

{

for (int i = k; i < arraySize; i++)

{

arr[i] = arr[i + 1];

}

arraySize = arraySize - 1;

};

}

public void display()

{

if (arraySize == 0)

{

System.out.println("Array is empty!");

}

else

{

for (int i = 0; i < arraySize; i++)

{

System.out.println(arr[i]);

}

};

System.out.println("array size is " + arraySize);

}

}

Add a testing class that can test all the operations defined in the sortedArrayAccess class.

Make your testing menu-driven on program 1-2.

package SortedArrayAccess;

import java.util.*;

public class sortedArrayAccess

{

public static double[] arr;

private int arraySize;

public sortedArrayAccess(int scale)

{

arr = new double[scale];

arraySize = 0;

}

public final double get(int i)

{

return arr[i];

}

public final int BinarySearch(double Key)

{

int k = 0;

int lower = 0;

int upper = arraySize - 1;

while (lower < upper)

{

k = (lower + upper + 1) / 2;

if (Key == arr[k])

{

break;

}

if (Key < arr[k])

{

upper = k - 1;

}

else

{

lower = k + 1;

}

}

if (lower == upper)

{

k = lower;

}

if (Key == arr[k])

{

return k;

}

else

{

System.out.println("The item cannot be found!");

return -1;

}

}

public final void insertion(double Key, double Item)

{

if (arraySize == 0)

{

arr[0] = Item;

}

/* find the position for interting the given item */

int position = 0;

while (Key > arr[position] && position < arraySize)

{

position++;

}

for (int i = arraySize; i > position; i--)

{

arr[i] = arr[i - 1];

}

arr[position] = Item;

arraySize = arraySize + 1;

}

public final void deletion(double Key)

{

/* find the given item */

int position = BinarySearch(Key);

if (position != -1)

{

for (int i = position; i < arraySize - 1; i++)

{

arr[i] = arr[i + 1];

}

arraySize = arraySize - 1;

};

}

public final void display()

{

if (arraySize != 0)

{

for (int i = 0; i < arraySize; i++)

{

System.out.println(arr[i]);

}

};

System.out.println("The number of items is " + arraySize);

}

public static void main (String [] args){

}

}

4.3 Modify program P1-2 so that the array is of Employee type. The sorting key is the employee’s id. The class Employee is given blow:

import java.util.Scanner;

               

public class employee

{

                         

public int id;

public String name;

public double salary;

               

public void Input()

{

System.out.println("Enter name: ");

name = new Scanner(System.in).nextLine();

Explanation / Answer

Question 1

package unsortedArrayAccess;

import java.util.Scanner;

/**
* Menu driven program to test unsortedArrayAccess
* @author
*/
public class TestUnSortedArray {
private static final int MAX_ARRAYSIZE=20;//Size of the array to be created

  
public static void main(String[] args) {
unsortedArrayAccess arr=new unsortedArrayAccess(MAX_ARRAYSIZE);//create an unsorted array of max size
int choice;
Scanner in=new Scanner(System.in);
while(true)
{
System.out.println("0.Get Item at:");//display menu
System.out.println("1.Search");//display menu
System.out.println("2.Append");
System.out.println("3.Remove");
System.out.println("4.Deletion");
System.out.println("5.Display");
System.out.println("6.Exit");
System.out.println("Enter your option:(0-6)");//get option
choice=in.nextInt();
switch(choice)
{
case 0:
System.out.println("Enter loc of item:");
int pos=in.nextInt();
System.out.println("Item:"+arr.get(pos));
break;
case 1:
System.out.println("Enter key to be searched:");
int loc=arr.search(in.nextDouble());//returns loc at which item is found
if(loc>-1)
System.out.println("Found at location:"+loc);
break;
case 2:
System.out.println("Enter item to be appended:");
arr.append(in.nextDouble());
break;
case 3:
double item=arr.remove();//removes from end of array
if(item>-1)
System.out.println("Item removed:"+item);
break;
case 4:
System.out.println("Enter item to be deleted:");
arr.deletion(in.nextDouble());
break;
case 5:
arr.display();
break;
case 6:
System.exit(0);
default:
System.out.println("Enter a valid option");
}//switch end
  
}//while end   
  
}
  
}

Sample Output Question 1

run:
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
0
Enter loc of item:
7
Item:0.0
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
1
Enter key to be searched:
23
There is no such item!
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
2
Enter item to be appended:
34
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
2
Enter item to be appended:
23
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
2
Enter item to be appended:
12
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
2
Enter item to be appended:
3
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
3
Item removed:3.0
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
4
Enter item to be deleted:
12
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
5
34.0
23.0
array size is 2
0.Get Item at:
1.Search
2.Append
3.Remove
4.Deletion
5.Display
6.Exit
Enter your option:(0-6)
6
BUILD SUCCESSFUL (total time: 56 seconds)

Question 2

package SortedArrayAccess;

import java.util.Scanner;

/**
* Menu driven program to test sortedArrayAccess
* @author
*/
public class TestSortedArray {
private static final int MAX_ARRAYSIZE=20;//Size of the array to be created

  
public static void main(String[] args) {
sortedArrayAccess arr=new sortedArrayAcess(MAX_ARRAYSIZE);//create an array of max size
int choice;
Scanner in=new Scanner(System.in);
while(true)
{
System.out.println("0.Get Item at:");
System.out.println("1.Search");//display menu
System.out.println("2.Append");
System.out.println("3.Deletion");
System.out.println("4.Display");
System.out.println("5.Exit");
System.out.println("Enter your option:(0-5)");//get option
choice=in.nextInt();
switch(choice)
{
case 0:
System.out.println("Enter loc of item:");
int pos=in.nextInt();
System.out.println("Item:"+arr.get(pos));
break;
case 1:
System.out.println("Enter item to be searched:");
int loc=arr.BinarySearch(in.nextDouble());//returns loc at which item is found
if(loc>-1)
System.out.println("Found at location:"+loc);
break;
case 2:
double key,item;
System.out.println("Enter key of item to be inserted:");
key=in.nextDouble();
System.out.println("Enter item to be inserted:");
item=in.nextDouble();
arr.insertion(key,item);
break;   
case 3:
System.out.println("Enter item to be deleted:");
arr.deletion(in.nextDouble());
break;
case 4:
arr.display();
break;
case 5:
System.exit(0);
default:
System.out.println("Enter a valid option");
}//switch end
  
}//while end   
  
}
  
}

Sample Output Question 2

run:
0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

1

Enter key to be searched:

3

The item cannot be found!

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

2

Enter key of item to be inserted:

23

Enter item to be inserted:

34

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

3

Enter item to be deleted:

23

The item cannot be found!

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

34

Enter a valid option

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

3

Enter item to be deleted:

34

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

4

The number of items is 0

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

2

Enter key of item to be inserted:

20

Enter item to be inserted:

34

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

2

Enter key of item to be inserted:

10

Enter item to be inserted:

12

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

4

12.0

34.0

The number of items is 2

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

2

Enter key of item to be inserted:

23

Enter item to be inserted:

4

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

4

12.0

4.0

34.0

The number of items is 3

0.Get Item at:

1.Search

2.Append

3.Deletion

4.Display

5.Exit

Enter your option:(1-5)

5

Question 3

package SortedArrayAccess;

import java.util.*;

public class sortedArrayAccess

{

public static employee[] arr;

private int arraySize;

public sortedArrayAccess(int scale)

{

arr = new employee[scale];

arraySize = 0;

}

public final employee get(int i)

{

return arr[i];

}

public final int BinarySearch(double Key)

{

int k = 0;

int lower = 0;

int upper = arraySize - 1;

while (lower < upper)

{

k = (lower + upper + 1) / 2;

if (arr[k]!=null &&Key == arr[k].id )

{

break;

}

if (arr[k]!=null &&Key < arr[k].id)

{

upper = k - 1;

}

else

{

lower = k + 1;

}

}

if (lower == upper)

{

k = lower;

}

if (arr[k]!=null && Key == arr[k].id )

{

return k;

}

else

{

System.out.println("The item cannot be found!");

return -1;

}

}

public final void insertion(int Key, employee Item)

{

if (arraySize == 0)

{

arr[0] = Item;

}

/* find the position for interting the given item */

int position = 0;

while (position < arraySize &&Key > arr[position].id )

{

position++;

}

for (int i = arraySize; i > position; i--)

{

arr[i] = arr[i - 1];

}

arr[position] = Item;

arraySize = arraySize + 1;

}

public final void deletion(int Key)

{

/* find the given item */

int position = BinarySearch(Key);

if (position != -1)

{

for (int i = position; i < arraySize - 1; i++)

{

arr[i] = arr[i + 1];

}

arraySize = arraySize - 1;

};

}

public final void display()

{

if (arraySize != 0)

{

for (int i = 0; i < arraySize; i++)

{

System.out.println(arr[i]);

}

};

System.out.println("The number of items is " + arraySize);

}

public static void main (String [] args){

}

}

Test Class for Q 3

package SortedArrayAccess;

import java.util.Scanner;

/**
* Menu driven program to test sortedEmployee
* @author
*/
public class TestSortedEmployee {
private static final int MAX_ARRAYSIZE=20;//Size of the array to be created

  
public static void main(String[] args) {
sortedArrayAccess arr=new sortedArrayAccess(MAX_ARRAYSIZE);//create an array of max size
int choice;
Scanner in=new Scanner(System.in);
while(true)
{
System.out.println("0.Get Employee at:");
System.out.println("1.Search");//display menu
System.out.println("2.Append");
System.out.println("3.Deletion");
System.out.println("4.Display");
System.out.println("5.Exit");
System.out.println("Enter your option:(0-5)");//get option
choice=in.nextInt();
switch(choice)
{
case 0:
System.out.println("Enter loc of employee:");
int pos=in.nextInt();
System.out.println("Employee:"+arr.get(pos));
break;
case 1:
System.out.println("Enter id of employee to be searched:");
int loc=arr.BinarySearch(in.nextInt());//returns loc at which item is found
if(loc>-1)
System.out.println("Found at location:"+loc);
break;
case 2:
employee emp=new employee();
emp.Input();
arr.insertion(emp.id,emp);
break;   
case 3:
System.out.println("Enter id of employee to be deleted:");
arr.deletion(in.nextInt());
break;
case 4:
arr.display();
break;
case 5:
System.exit(0);
default:
System.out.println("Enter a valid option");
}//switch end
  
}//while end   
  
}
  
}

Sample Output Q 3

run:
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
2
Enter name:
sdd
Enter id:
12
Enter salary:
11233
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
2
Enter name:
sewe
Enter id:
23
Enter salary:
124344
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
0
Enter loc of employee:
0
Employee:employee{id=12, name=sdd, salary=11233.0}
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
1
Enter id of employee to be searched:
12
Found at location:0
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
4
employee{id=12, name=sdd, salary=11233.0}
employee{id=23, name=sewe, salary=124344.0}
The number of items is 2
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
3
Enter id of employee to be deleted:
12
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
4
employee{id=23, name=sewe, salary=124344.0}
The number of items is 1
0.Get Employee at:
1.Search
2.Append
3.Deletion
4.Display
5.Exit
Enter your option:(0-5)
5
BUILD SUCCESSFUL (total time: 46 seconds)

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote