Command Line Args Modify code below to accept the values for the key as command line arguments. Your program may assume the arguments given at the command line are integers. If there are no arguments, print a message. If there is at least one argument, compute and print the average of the arguments. Note that you will need to use the parseInt method of the Integer class to extract integer values from the strings that are passed in. If any non-integer values are passed in, your program will produce an error, which is unavoidable at this point. import java.util.Scanner;import java.text.NumberFormat; public class Quizzes {// ----------------------------------------------// Read in the number of questions followed by// the key, then read in each student's answers// and calculate the number and percent correct.// ---------------------------------------------- public static void main(String[] args) {int numQuestions;int numCorrect;String anotherQuiz;int answer;NumberFormat percent = NumberFormat.getPercentInstance(); Scanner scan = new Scanner(System.in); System.out.println("Quiz Grading");System.out.println();do {System.out.print("Enter the number of questions on the quiz: ");numQuestions = scan.nextInt(); // CREATE THE ARRAY FOR THE KEYint[] key = new int[numQuestions]; // LOAD THE ARRAY WITH INPUT FROM THE USER System.out.print("Enter the answer key: \n"); for (int i = 0; i < numQuestions; i++) {System.out.print("Enter the key for Question " + (i + 1) + ": ");key[i] = scan.nextInt();}// OUTER LOOP TO ALLOW THE USER TO ENTER GRADES FOR ANY NUMBER OF// QUIZZES System.out.print("Enter the student answers:\n ");// LOOP TO GET ANSWERS FROM THE USER AND COUNT THE NUMBER OF// CORRECT ANSWERSnumCorrect = 0;for (int i = 0; i < numQuestions; i++) {System.out.print("Enter the Answer for Question " + (i + 1)+ ": ");answer = scan.nextInt();if (answer == key[i]) {numCorrect++; } } // DISPLAY THE NUMBER OF CORRECT ANSWERS AND PERCENT System.out.println("Number of Correct Answers :" + numCorrect);System.out.printf("Percent correct :%.2f\n",((float) numCorrect / (float) numQuestions) * 100.0); // ASK USER IF THEY WISH TO GRADE ANOTHER QUIZSystem.out.print("Grade another quiz? (y/n):");anotherQuiz = scan.next();if (anotherQuiz.equals("n"))break;} while (true); } }

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter7: Characters, Strings, And The Stringbuilder
Section: Chapter Questions
Problem 12RQ
icon
Related questions
Question

Command Line Args

 

Modify code below to accept the values for the key as command line arguments.

Your program may assume the arguments given at the command line are integers. If there are no

arguments, print a message. If there is at least one argument, compute and print the average of the arguments.

 

Note that you will need to use the parseInt method of the Integer class to extract integer values from the strings that are passed in. If any non-integer values are passed in, your program will produce an error, which is unavoidable at this point.

 

 

 

import java.util.Scanner;
import java.text.NumberFormat;

public class Quizzes {
// ----------------------------------------------
// Read in the number of questions followed by
// the key, then read in each student's answers
// and calculate the number and percent correct.
// ----------------------------------------------

public static void main(String[] args) {
int numQuestions;
int numCorrect;
String anotherQuiz;
int answer;
NumberFormat percent = NumberFormat.getPercentInstance();

Scanner scan = new Scanner(System.in);


System.out.println("Quiz Grading");
System.out.println();
do {
System.out.print("Enter the number of questions on the quiz: ");
numQuestions = scan.nextInt();

// CREATE THE ARRAY FOR THE KEY
int[] key = new int[numQuestions];

// LOAD THE ARRAY WITH INPUT FROM THE USER

System.out.print("Enter the answer key: \n");

for (int i = 0; i < numQuestions; i++) {
System.out
.print("Enter the key for Question " + (i + 1) + ": ");
key[i] = scan.nextInt();
}
// OUTER LOOP TO ALLOW THE USER TO ENTER GRADES FOR ANY NUMBER OF
// QUIZZES

System.out.print("Enter the student answers:\n ");
// LOOP TO GET ANSWERS FROM THE USER AND COUNT THE NUMBER OF
// CORRECT ANSWERS
numCorrect = 0;
for (int i = 0; i < numQuestions; i++) {
System.out.print("Enter the Answer for Question " + (i + 1)
+ ": ");
answer = scan.nextInt();
if (answer == key[i]) {
numCorrect++;

}

}

// DISPLAY THE NUMBER OF CORRECT ANSWERS AND PERCENT

System.out.println("Number of Correct Answers :" + numCorrect);
System.out.printf("Percent correct :%.2f\n",
((float) numCorrect / (float) numQuestions) * 100.0);

// ASK USER IF THEY WISH TO GRADE ANOTHER QUIZ
System.out.print("Grade another quiz? (y/n):");
anotherQuiz = scan.next();
if (anotherQuiz.equals("n"))
break;
} while (true);

}

}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 3 images

Blurred answer
Knowledge Booster
Array
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT