Drivers License Exam The local Drivers License Office has as

Driver\'s License Exam

The local Driver\'s License Office has asked you to write a program that grades the written portion of the driver\'s license exam. The exam has 20 multiple-choice questions. Here are the correct answers:

1. B

6. A

11. B

16. C

2. D

7. B

12. C

17. C

3. A

8. A

13. D

18. B

4. A

9. C

14. A

19. D

5. C

10. D

15. D

20. A

The class should have the following methods:

getStudentAnswer. Include an array to hold the student\'s answers. Ask the user to enter a student\'s answers. Return the answers to main().

passed. Returns true if the student passed the exam, or false if the student failed. A student must correctly answer 15 of 20 questions to pass the exam.

totalCorrect. Returns the total number of correctly answered questions

totalIncorrect. Returns the total number of incorrectly answered questions

questonsMissed. An array containing the question numbers of the questions that the student missed

Display the results from the method displayResults.

1. B

6. A

11. B

16. C

2. D

7. B

12. C

17. C

3. A

8. A

13. D

18. B

4. A

9. C

14. A

19. D

5. C

10. D

15. D

20. A

Solution

DriveExaM.java

class DriveExam
{
// an array of student\'s answers.
private final String[] correctAnswers = {\"B\",\"D\",\"A\",\"A\",\"C\",\"A\",\"B\",\"A\",\"C\",\"D\",\"B\",\"C\",\"D\",\"A\",\"D\",\"C\",\"C\",\"B\",\"D\",\"A\"};
  
//Store the User answers
private final String[] userAnswers;
  
int[] missed = new int [correctAnswers. length];
  
// Process the user answers
public DriveExam(String[] Answers)
{
userAnswers = new String[Answers.length];
for (int i= 0; i< Answers.length; i++)
{
userAnswers[i] = Answers[i];
}
}
//return boolean value if correct answers > 15
public boolean passed()
{
if(totalCorrect()>= 15)
return true;
else
return false;
}
// total Correct answers
public int totalCorrect()
{
int correctCount=0;
for (int i =0; i < correctAnswers.length;i++)
{
if (userAnswers[i].equalsIgnoreCase(correctAnswers[i]))
{
// missed [correctCount]= i;
correctCount++;
}
}
return correctCount;
}
  
// total Correct answers
public int totalInCorrect()
{
int incorrectCount=0;
for (int i =0; i < correctAnswers.length;i++)
{
if (!userAnswers[i].equalsIgnoreCase(correctAnswers[i]))
{
missed [incorrectCount]= i;
incorrectCount++;
}
}
return incorrectCount;
}
  
// Missed questions.
public int[] questionMissed()
{
return missed;
}
}
  

_______________________________

ExamApplication.java

import java.util.Scanner;
public class ExamApplication
{
public static void main(String[]args)
{
System.out.println(\"Driver\'s Lincense Exam\");
  
//scanner class object is used to read the inputs entered by the user
Scanner kb=new Scanner(System.in);
  
System.out.println(\"20 Multiple choice questions \");
  
// Creating the array of type String
String [] answers = new String [20];
  
String answer;
for (int i =0; i <20;i++)
{
do
{
System.out.print((i+1)+\":\");
answer = kb.nextLine();
}
while (!isValidAnswer(answer));
answers[i]=answer;
}
//Process
DriveExam exam= new DriveExam(answers);
  
displayResult(exam);
  
}
private static void displayResult(DriveExam exam) {
  
//Result
System.out.print (\"Result\");
// outputting Total correct
System.out.println(\"Total Correct:\"+ exam.totalCorrect());
//outputting total incorrect
System.out.println(\"total incorrect:\" +exam.totalInCorrect());
String passed = exam.passed()? \"Yes \":\" No\";
// result pass or fail
System.out.println (\"Passed :\" +passed);
if (exam.totalInCorrect()>0)
{
System.out.println(\"The incorrect answers are\");
int missedIndex;
for (int i = 0; i < exam.totalInCorrect();i++)
{
missedIndex = exam.questionMissed()[i]+1;
System.out.print(\" \"+missedIndex);
}
}  
      
   }
  
   // return true when the answer is valid
public static boolean isValidAnswer(String answer)
{
return \"A\".equalsIgnoreCase(answer)|| \"B\".equalsIgnoreCase(answer)|| \"C\".equalsIgnoreCase(answer)||\"D\".equalsIgnoreCase(answer);
}
}
________________________________

Output:

Driver\'s Lincense Exam
20 Multiple choice questions
1:B
2:D
3:A
4:A
5:C
6:A
7:B
8:A
9:C
10:D
11:B
12:C
13:D
14:A
15:C
16:B
17:A
18:B
19:D
20:C
ResultTotal Correct:16
total incorrect:4
Passed :Yes
The incorrect answers are
15 16 17 20

________________Thank You

Driver\'s License Exam The local Driver\'s License Office has asked you to write a program that grades the written portion of the driver\'s license exam. The ex
Driver\'s License Exam The local Driver\'s License Office has asked you to write a program that grades the written portion of the driver\'s license exam. The ex
Driver\'s License Exam The local Driver\'s License Office has asked you to write a program that grades the written portion of the driver\'s license exam. The ex
Driver\'s License Exam The local Driver\'s License Office has asked you to write a program that grades the written portion of the driver\'s license exam. The ex

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site