187k views
3 votes
For this project you will write a Java program that will run a simple math quiz. Your program will generate two random integers between 1 and 20 and then ask a series of math questions. Each question will be evaluated as to whether it is the right or wrong answer. In the end a final score should be reported for the user. (See below for how to generate random numbers).Following the instructions from Closed Lab 01, create a new folder named FunWithBranching and a new Java program in that folder named FunWithBranching.java for this assignment.Sample Ouptut This is a sample transcript of what your program should do. Values in the transcript in BOLD show the user inputs. So in this transcript the user inputs 33, Jeremy, 24, -16, 80 and 0 - the rest is output from the program.Enter a random number seed: 33Enter your name: JeremyHello Jeremy!Please answer the following questions:4 + 20 = 24Correct!4 - 20 = -16Correct!4 * 20 = 80Correct!4 / 20 = 0Correct!4 % 20 = 4Correct!You got 5 correct answers!That's 100.0%!Your code will behave differently based on the random number seed you use and the answers provided by the user. Here is a second possible execution of this code. As before, values in BOLD are provided by the user - in this case 54, Bob, 8, 32, 8 and 1 - the rest is the output of the program when you run it.Enter a random number seed: 54Enter your name: BobHello Bob!Please answer the following questions:20 + 12 = 8Wrong!The correct answer is: 3220 - 12 = 32Wrong!The correct answer is: 820 * 12 = 8Wrong!The correct answer is: 24020 / 12 = 1Correct!20 % 12 = 8Correct!You got 2 correct answers!That's 40.0%!

User Tjleigh
by
5.9k points

1 Answer

3 votes

Answer:

Here is the JAVA program:

import java.util.Scanner; //to accept input from user

public class FunWithBranching { //class name

public static void main(String[] args) { //start of main function

Scanner input = new Scanner(System.in); //creates Scanner object

System.out.print("Enter your name: "); //prompts user to enter name

String userName = input.nextLine(); //stores the name

System.out.print("Welcome " + userName + "! Please answer the following questions:\\"); //prompts user to answer the questions

int randomOperand1 = (int)(20 * Math.random()) + 1; //generates random number for operand 1 (1-20)

int randomOperand2 = (int)(20 * Math.random()) + 1; //generates random number for operand 2 (1-20)

int randomAdd = randomOperand1 + randomOperand2; //performs addition of two random numbers and stores result in randomAdd

int randomMul = randomOperand1 * randomOperand2; //performs multiplication of two random numbers

int randomDiv = randomOperand1 / randomOperand2; //performs division of two random numbers

int randomMod = randomOperand1 % randomOperand2; //performs modulo of two random numbers

int correctAns = 0; //stores number of correct answers

System.out.print(randomOperand1 + " + " + randomOperand2 + " = "); //displays random number + random number

int AdditionGuess = input.nextInt(); //reads the answer of addition from user and stores it in AdditionGuess

if (AdditionGuess == randomOperand1 + randomOperand2) { //if the user answer is correct

System.out.println("Correct!"); //displays correct

correctAns++; //adds 1 to the count of correctAns every time the user gives correct answer of addition

} else { //if user answer is incorrect

System.out.println("Wrong!"); //displays wrong

System.out.println("The correct answer is " + randomAdd); } //displays the correct answer of addition

System.out.print(randomOperand1 + " * " + randomOperand2 + " = "); //displays random number * random number

int MultiplicationGuess = input.nextInt(); //reads the answer of multiplication from user and stores it in MultiplicationGuess

if (MultiplicationGuess == randomOperand1 * randomOperand2) { //if the user answer is correct

System.out.println("Correct!"); //displays correct

correctAns++; //adds 1 to the count of correctAns every time the user gives correct answer of multiplication

}else{ //if user answer is incorrect

System.out.println("Wrong!"); //displays wrong

System.out.println("The correct answer is " + randomMul); } //displays the correct answer of multiplication

System.out.print(randomOperand1 + " / " + randomOperand2 + " = "); //displays random number / random number

int DivisionGuess = input.nextInt(); //reads the answer of division from user and stores it in DivisionGuess

if (DivisionGuess == randomOperand1 / randomOperand2) { //if the user answer is correct

System.out.println("Correct!"); //displays correct

correctAns++; //adds 1 to the count of correctAns every time the user gives correct answer of division

}else{ //if user answer is incorrect

System.out.println("Wrong!"); //displays wrong

System.out.println("The correct answer is " + randomDiv); } //displays the correct answer of division

System.out.print(randomOperand1 + " % " + randomOperand2 + " = "); //displays random number % random number

int ModGuess = input.nextInt(); //reads the answer of modulo from user and stores it in ModGuess

if (ModGuess == randomOperand1 % randomOperand2) { //if the user answer is correct

System.out.println("Correct!"); //displays correct

correctAns++; //adds 1 to the count of correctAns every time the user gives correct answer of modulo

}else{ //if user answer is incorrect

System.out.println("Wrong!"); //displays wrong

System.out.println("The correct answer is " + randomMod); } //displays the correct answer of modulo

double percentage = correctAns * 25; //computes percentage

System.out.println("You got " + correctAns + " correct answers."); //display number of correct answers given by user

System.out.println("That's " + percentage + "%!"); } } //displays percentage

Step-by-step explanation:

The program is well explained in the comments mentioned with each line of code. The screenshot of the output is attached.

For this project you will write a Java program that will run a simple math quiz. Your-example-1
User Gabe Shahbazian
by
6.0k points