We need to write a Java program that allows us to calculate the average grade in a class The program will create Three Threads as follows: 1. Grades Thread: a thread that asks the user to enter the number of students. Then, it reads the grades of the students and stores them in an array and calculates the average grade. 2. CountCalculator Thread: The thread receives three parameters. The first parameter is a reference to an array of double values. The second parameter is a double value called "key". The third parameter is a Boolean called "countAbove". If countAbove is true, the thread will calculate the number of values in the array that are greater than key. Otherwise, the thread calculates the number of values that are below key. 3. Main thread: a. Creates starts and synchronizes the necessary threads. (Note that the Grade Thread

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
Please sample solution and quickly
We need to write a Java program that allows us to calculate the average grade in a class
The program will create Three Threads as follows:
1. Grades Thread: a thread that asks the user to enter the number of students. Then, it reads
the grades of the students and stores them in an array and calculates the average grade.
2. CountCalculator Thread: The thread receives three parameters. The first parameter is a
reference to an array of double values. The second parameter is a double value called
"key". The third parameter is a Boolean called "countAbove". If countAbove is true, the
thread will calculate the number of values in the array that are greater than key.
Otherwise, the thread calculates the number of values that are below key.
3. Main thread:
a. Creates starts and synchronizes the necessary threads. (Note that the Grade Thread
will ask the user to enter grades as described above)
b. Displays the number of grades above the average and the number of grades below
the average
Notes:
1. You should use the join method to synchronize the threads. (Do not use semaphore)
2. It is your responsibility to know when to use the join method to get correct results in the
fastest way.
Sample Run: (The underlined values are entered by the user)
Enter Number of Students: 5
Enter 5 grades: 80 90 70 60 80
Number of grades above average: 3
Number of grades below average: 2
Transcribed Image Text:We need to write a Java program that allows us to calculate the average grade in a class The program will create Three Threads as follows: 1. Grades Thread: a thread that asks the user to enter the number of students. Then, it reads the grades of the students and stores them in an array and calculates the average grade. 2. CountCalculator Thread: The thread receives three parameters. The first parameter is a reference to an array of double values. The second parameter is a double value called "key". The third parameter is a Boolean called "countAbove". If countAbove is true, the thread will calculate the number of values in the array that are greater than key. Otherwise, the thread calculates the number of values that are below key. 3. Main thread: a. Creates starts and synchronizes the necessary threads. (Note that the Grade Thread will ask the user to enter grades as described above) b. Displays the number of grades above the average and the number of grades below the average Notes: 1. You should use the join method to synchronize the threads. (Do not use semaphore) 2. It is your responsibility to know when to use the join method to get correct results in the fastest way. Sample Run: (The underlined values are entered by the user) Enter Number of Students: 5 Enter 5 grades: 80 90 70 60 80 Number of grades above average: 3 Number of grades below average: 2
Expert Solution
steps

Step by step

Solved in 5 steps with 4 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY