0

Hello All

I am writing this program which:
- generates two random numbers
-ask user to multiply them
-checked users answer to see if its correct.
- if not correct, asked the user to guess again

I have everything working except the loop that is needed to have the user continue to guess if inputing the wrong answer.

As it stands right now, if the user answers correct, get a message saying "you answered correct.

If user is wrong, gets message saying "Guess Again". I need to figure out how to have the program loop back around to have user input a new answer until user gets it right


import java.io.*;
import java.util.Random;
public class math
{
//-----------------------------------------------------------------
// Generates random numbers
//-----------------------------------------------------------------
public static void main (String[] args)throws IOException
{
DataInputStream stdin = new DataInputStream (System.in);
Random generator = new Random();
int num1;
int num2;
int guess;
int answer;
String string1;

num1 = generator.nextInt(13); //Gets random num1

num2 = generator.nextInt(13); //Gets Random num2

System.out.println ("what is " + num1 + "*" + num2);


string1 = stdin.readLine();
guess = Integer.parseInt(string1);
answer = (num1 * num2);

if (guess == answer)
{ //Begin if bracket
System.out.println("Very good, the correct answer is " + answer);
} //End if Bracket
else
{ //Begin Else Brakcets
System.out.println("Guess again");
}
//End Else brackets
}

} //Close MAIN bracket


} //Close CLASS MATH bracket

5
Contributors
5
Replies
11
Views
11 Years
Discussion Span
Last Post by JamesCherrill
0

Write a java program to find the result of the following
equations for the values given.
a. sin^(theta) + cos^2(theta) where theta=90 degrees
b. (x+y)^2/(x-y)^2 where x=4.0, y=2.0
c. logx + x^3 where x=10
d. e^x -2x + 3y where x =1, y=2.5
e. (x+y)^3 where x=1, y=1
f. min(x,y) and max(x,y) where x=-2.5, y=-2.5123
Note: the name of the class must be H5

0
import java.io.*;
import java.util.Random;

public class Math {
    //-----------------------------------------------------------------
// Generates random numbers
//-----------------------------------------------------------------
    public static void main(String[] args) throws IOException {
        BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
        Random generator = new Random();
        int num1;
        int num2;
        int guess;
        int answer;
        String string1;

        num1 = generator.nextInt(13); //Gets random num1

        num2 = generator.nextInt(13); //Gets Random num2

        System.out.println("what is " + num1 + "*" + num2);


        string1 = stdin.readLine();
        guess = Integer.parseInt(string1);
        answer = (num1 * num2);

        while(answer != guess)
        {

            System.out.println("Guess again");
            string1 = stdin.readLine();
            guess = Integer.parseInt(string1);

        }

        System.out.println("Very good, the correct answer is " + answer);


    }


}
0

I_1 What exactly is the point of your post?
This thread was dead 7 years ago. And anyway, we don't do people's homework here, so just posting an uncommented, unexplained, repetitive, fragile code down't really help anyone.

As a newcomer you may find it useful to spend a little time reading current post activity to see how things go here.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.