JAVA PROGRAMMING ASSIGNMENT: You run four computer labs. Each lab contains compu
ID: 3707713 • Letter: J
Question
JAVA PROGRAMMING ASSIGNMENT:
You run four computer labs. Each lab contains computer stations that are numbered as shown in the table below:-
Lab Number Computer Station Numbers
1 1-5
2 1-6
3 1-4
4 1-3
Each user has a unique five-digit ID Number. Whenever a user logs on, the user's ID, Lab Number, and the computer station are transmitted to your station. For example, if user 49193 logs onto station 2 in Lab 3, your system receives (49193, 2, 3) as input data. Similarly, when a user logs off a station, your system receives the Lab Number and computer station number.
Write a Java program that could be used to track, by lab, which user is logged onto which computer. For example, if user 49193 is logged into station 2 in lab 3 and user 99577 is logged into station 1 of lab 4, then your system might display the following:-
Lab Number Computer Stations
1 1: empty 2: empty 3: empty 4: empty 5: empty
2 1: empty 2: empty 3: empty 4: empty 5: empty 6: empty
3 1: empty 2: 49193 3: empty 4: empty
4 1: 99577 2: empty 3: empty
Task:-
1. Create a menu that allows the administrator to simulate the transmission of information by manually typing in the login or logoff data. Whenever someone logs in or out, the display table should be updated.
2. Write a search option so the administrator can type in a user Id and the system will output what Lab Number and station number the user is logged into, or "None" if the user Id is not logged into any computer station.
You should use a fixed array of length 4 for the labs. Each array entry points to a dynamic array that stores the user login information for each respective computer station.
Sample Output:- (User input is in bold and Italics)
LAB STATUS Lab # Computer Stations 1 1: empty 2: empty 3: empty 4: empty 5: empty 2 1: empty 2: empty 3: empty 4: empty 5: empty 6: empty 3 1: empty 2: empty 3: empty 4: empty 4 1: empty 2: empty 3: empty
MAIN MENU 0) Quit 1) Simulate login 2) Simulate logoff 3) Search 1 Enter the 5 digit ID number of the user logging in: 12345 Enter the lab number the user is logging in from (1-4): 2 Enter computer station number the user is logging in to (1-6): 3
LAB STATUS Lab # Computer Stations 1 1: empty 2: empty 3: empty 4: empty 5: empty 2 1: empty 2: empty 3: 12345 4: empty 5: empty 6: empty 3 1: empty 2: empty 3: empty 4: empty 4 1: empty 2: empty 3: empty
MAIN MENU 0) Quit 1) Simulate login 2) Simulate logoff 3) Search 2 Enter the 5 digit ID number of the user to find: 12345 User 12345 is logged off.
LAB STATUS Lab # Computer Stations 1 1: empty 2: empty 3: empty 4: empty 5: empty 2 1: empty 2: empty 3: empty 4: empty 5: empty 6: empty 3 1: empty 2: empty 3: empty 4: empty 4 1: empty 2: empty 3: empty
MAIN MENU 0) Quit 1) Simulate login 2) Simulate logoff 3) Search
REMEMBER TO WRITE COMMENTS NEXT TO OR ABOVE EACH LINE OF CODE, EXPLAINING WHAT IT DOES.
Explanation / Answer
import java.util.Scanner;
public class Driver {
static String[][] lab=null;
public static void main(String[] args) {
lab=new String[4][];
lab[0]=new String[5];
lab[1]=new String[6];
lab[2]=new String[4];
lab[3]=new String[3];
for (int i=0; i<lab.length; i++)
{
int no=i;
no++;
System.out.print (no);
int count=0;
for(int j=0; j<lab[i].length; j++)
{
lab[i][j] ="empty";
//System.out.println("lab no computer stations");
if(count==0)
{
if(no>1)
{
no=1;
}
count++;
}
System.out.print(" "+no+" ."+lab[i][j]);
no++;
}
System.out.println(" ");
}
System.out.println("**********************************************");
System.out.println("MAIN MENU");
Scanner scanner=new Scanner(System.in);
System.out.println("enter your choice");
System.out.println(" 0 quit");
System.out.println("1. simulate login");
System.out.println("2. simulate logoff");
System.out.println("3. search");
int choice=scanner.nextInt();
switch(choice)
{
case 0:System.exit(0);
break;
case 1:System.out.println("welcome to login");
System.out.println("entre five digit unique no");
String userid=scanner.next();
System.out.println("enter computer station no");
int computerStationNo=scanner.nextInt();
System.out.println("enter labno");
int labNo=scanner.nextInt();
insert(userid,computerStationNo,labNo);
break;
default:System.out.println("please enter correct choice");
break;
}
}
private static void insert(String userid, int computerStationNo, int labNo) {
for(int i=0;i<=lab.length;i++)
{
++i;
if(labNo==i)
{
--i;
for(int j=0; j<lab[i].length; j++)
{
if(j==computerStationNo)
{
lab[i][computerStationNo] =userid;
}
}
}
}
for (int i1=0; i1<lab.length; i1++)
{
int no=i1;
no++;
System.out.print (no);
int count=0;
for(int j=0; j<lab[i1].length; j++)
{
//System.out.println("lab no computer stations");
if(count==0)
{
if(no>1)
{
no=1;
}
count++;
}
System.out.print(" "+no+" ."+lab[i1][j]);
no++;
}
System.out.println(" ");
}
System.out.println("**********************************************");
}
}
output
1 1 .empty 2 .empty 3 .empty 4 .empty 5 .empty
2 1 .empty 2 .empty 3 .empty 4 .empty 5 .empty 6 .empty
3 1 .empty 2 .empty 3 .empty 4 .empty
4 1 .empty 2 .empty 3 .empty
**********************************************
MAIN MENU
enter your choice
0 quit
1. simulate login
2. simulate logoff
3. search
1
welcome to login
entre five digit unique no
23654
enter computer station no
2
enter labno
3
1 1 .empty 2 .empty 3 .empty 4 .empty 5 .empty
2 1 .empty 2 .empty 3 .empty 4 .empty 5 .empty 6 .empty
3 1 .empty 2 .23654 3 .empty 4 .empty
4 1 .empty 2 .empty 3 .empty
**********************************************
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.