1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
user100 [1]
3 years ago
7

In this assignment, you will create a flashcard app for teaching addition and multiplication. The student will choose the type o

f problem, how many they want to solve, and the maximum operand to include in each problem. The program will keep track of how many problems the student answered correctly and report that number along with their percentage. It will then repeat the process, allowing the student to choose a different kind of problem for the next round. Here is an example of how the program should work:
*******************************
Electronic Math Tutor
*******************************
Choose the type of problem:
1. Addition
2. Multiplication
3. Mixed
4. Quit
Enter your choice: 1
How many problems? 3
Largest operand? 12
10 + 8 = ? 17
Incorrect. The answer is 18.
0 + 5 = ? 5
Correct!
7 + 11 = ? 18
Correct!
You answered 2 out of 3 correctly.
Your average was 66.67.
Choose the type of problem:
1. Addition
2. Multiplication
3. Mixed
4. Quit
Computers and Technology
1 answer:
Anna11 [10]3 years ago
3 0

Answer:

See explaination

Explanation:

import java.util.*;

import java.lang.Math;

public class Main

{

public static double getRandomDoubleBetweenRange (double min, double max)

{

double x = (Math.random () * ((max - min) + 1)) + min;

return x;

}

public static void main (String[]args)

{

int option, number_of_problems, correct_answer;

double max_operand, average =

0, user_answer, sum, first_number, second_number, multiply,

sum_or_multiply;

Scanner user_input = new Scanner (System.in);

do

{

System.out.println

("Choose the type of problem: \n1. Addition \n2. Multiplication \n3. Mixed \n4. Quit");

option = user_input.nextInt ();

switch (option)

{

case 1:

correct_answer = 0;

System.out.println ("How many problems?");

number_of_problems = user_input.nextInt ();

System.out.println ("Largest operand?");

max_operand = user_input.nextDouble ();

for (int i = 0; i < number_of_problems; i++)

{

first_number = getRandomDoubleBetweenRange (0, max_operand);

second_number = getRandomDoubleBetweenRange (0, max_operand);

System.out.println (first_number + " + " + second_number +

" = ?");

user_answer = user_input.nextDouble ();

sum = first_number + second_number;

if (sum == user_answer)

{

System.out.println ("Correct!");

correct_answer = correct_answer + 1;

}

else

{

System.out.println ("Incorrect, The Correct answer is " +

sum);

}

}

average = correct_answer * 100 / number_of_problems;

System.out.println ("You answered " + correct_answer +

" out of " + number_of_problems +

" correctly. Your average was " + average);

break;

case 2:

correct_answer = 0;

System.out.println ("How many problems?");

number_of_problems = user_input.nextInt ();

System.out.println ("Largest operand?");

max_operand = user_input.nextDouble ();

for (int i = 0; i < number_of_problems; i++)

{

first_number = getRandomDoubleBetweenRange (0, max_operand);

second_number = getRandomDoubleBetweenRange (0, max_operand);

System.out.println (first_number + " * " + second_number +

" = ?");

user_answer = user_input.nextDouble ();

multiply = first_number * second_number;

if (multiply == user_answer)

{

System.out.println ("Correct!");

correct_answer = correct_answer + 1;

}

else

{

System.out.println ("Incorrect, The Correct answer is " +

multiply);

}

}

average = correct_answer * 100 / number_of_problems;

System.out.println ("You answered " + correct_answer +

" out of " + number_of_problems +

" correctly. Your average was " + average);

break;

case 3:

correct_answer = 0;

System.out.println ("How many problems?");

number_of_problems = user_input.nextInt ();

System.out.println ("Largest operand?");

max_operand = user_input.nextDouble ();

for (int i = 1; i <= number_of_problems; i++)

{

first_number = getRandomDoubleBetweenRange (0, max_operand);

second_number = getRandomDoubleBetweenRange (0, max_operand);

if (i % 2 == 1)

{

System.out.println (first_number + " + " + second_number +

" = ?");

user_answer = user_input.nextDouble ();

sum_or_multiply = first_number + second_number;

if (sum_or_multiply == user_answer)

{

System.out.println ("Correct!");

correct_answer = correct_answer + 1;

}

else

{

System.

out.println ("Incorrect, The Correct answer is " +

sum_or_multiply);

}

}

else

{

System.out.println (first_number + " * " + second_number +

" = ?");

user_answer = user_input.nextDouble ();

sum_or_multiply = first_number * second_number;

if (sum_or_multiply == user_answer)

{

System.out.println ("Correct!");

correct_answer = correct_answer + 1;

}

else

{

System.

out.println ("Incorrect, The Correct answer is " +

sum_or_multiply);

}

}

}

average = correct_answer * 100 / number_of_problems;

System.out.println ("You answered " + correct_answer +

" out of " + number_of_problems +

" correctly. Your average was " + average);

break;

case 4:

System.out.println ("Thanks for playing.");

break;

default:

System.out.println ("Please choose a valid option");

break;

}

}

while (option != 4);

}

}

You might be interested in
Where is the Outlook Search Folder located?
melamori03 [73]
When you go to the mail go to file and click new it should be in there as search folder
6 0
3 years ago
Match the data type to the given data.
guapka [62]
Float: 26.2
Array: c, o, m, p, u, t, er
Boolean: false
Character: c
7 0
3 years ago
if you see that your bank account has had some money taken out that you did not authorize, which of the following is one action
Savatey [412]
I would go straight to the bank and have it reported along with the police.
7 0
3 years ago
When should the sponsor-monitor conduct the most detailed review of the study protocol with the site's study staff?
Likurg_2 [28]

Answer:

Site initiation visit is the correct answer.

Explanation:

Because the SIV is the sponsor-monitor which administers the detailed analysis of the site's study staff by the study protocol and it observes the process of the visite over a while that it take place after the visite of the site section. It also needed to set up the research site to administrates the analysis. So, that's why the following answer is true.

8 0
3 years ago
What does UAS stand for
dezoksy [38]

Answer: Unmanned Aircraft Systems

Explanation:

8 0
3 years ago
Read 2 more answers
Other questions:
  • What is the height of the tallest possible red-black tree containing 31 values?
    7·1 answer
  • All digital images are made up from varying rectangles of color, called _____________.
    6·2 answers
  • A Write about why it is important for a person to upgrade their job skills
    14·1 answer
  • Show the stack with all activation record instances, including static and dynamic chains, when execution reaches position 1 in t
    6·1 answer
  • What is not an option when a user is exporting contacts to share with others?
    10·1 answer
  • Consider a system consisting of processes P1 , P2 , ..., Pn , each of which has a unique priority number. Write a monitor that a
    14·1 answer
  • William is an HR manager in a textile-manufacturing firm. He is creating a file on the hours each employee worked during the las
    6·2 answers
  • I want to sign up for brainly but it won't let me. It keeps saying "we can complete your registration at this time".
    13·1 answer
  • Define a new class Fighter that inherits from Spaceship. Add a variable property weapon that defaults to an empty string and a v
    14·1 answer
  • IN C++
    13·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!