Question: Java Assignment I am missing if the user chooses three invalid menu options in a row, a message displays about trying again later and ends
Java Assignment
I am missing if the user chooses three invalid menu options in a row, a message displays about trying again later and ends the program.
Here is my code so far.
import java.util.Scanner;
public class MenuDrivenCalculator {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
boolean mainLoop = true;
double Answer;
double firstNum, secondNum;
int menuSelect;
while(true){
System.out.println("Menu");
System.out.print("1. Add ");
System.out.print("2. Subtract ");
System.out.print("3. Multiply ");
System.out.print("4. Divide ");
System.out.print("5. Generate Random Number ");
System.out.print("6. Quit ");
System.out.print("What would you like to do? ");
menuSelect = input.nextInt();
switch(menuSelect){
case 1:
System.out.print("What is the first number?");
firstNum = input.nextDouble();
System.out.print("What is the second number?");
secondNum = input.nextDouble();
Answer = firstNum + secondNum;
System.out.print( "Answer: " +Answer );
System.out.print(" ");
System.out.print(" ");
break;
case 2:
System.out.println("What is the first number? ");
firstNum = input.nextDouble();
System.out.println("What is the second number? ");
secondNum = input.nextDouble();
Answer = firstNum - secondNum;
System.out.println("Answer: " +Answer);
System.out.print(" ");
System.out.print(" ");
break;
case 3:
System.out.println("What is the first number? ");
firstNum = input.nextDouble();
System.out.println("What is the second number? ");
secondNum = input.nextDouble();
Answer = firstNum * secondNum;
System.out.println("Answer: " +Answer);
System.out.print(" ");
System.out.print(" ");
break;
case 4:
System.out.println("What is your Numerator? ");
firstNum = input.nextDouble();
System.out.println("What is your Denominator? ");
secondNum = input.nextDouble();
if(secondNum == 0){
System.out.println("Double.NaN ");
secondNum = input.nextDouble();
}
Answer = firstNum / secondNum;
System.out.println("Answer: " +Answer);
System.out.print(" ");
System.out.print(" ");
break;
case 5:
double rand;
System.out.println("What is the low number in your range? ");
firstNum = input.nextDouble();
System.out.println("What is the high number in your range? ");
secondNum = input.nextDouble();
double randomVal = Math.random();
double randomNumber = (randomVal * (secondNum - firstNum)) + firstNum;
System.out.println("Answer: " +randomVal);
System.out.print(" ");
System.out.print(" ");
break;
case 6:
System.out.println("Goodbye!");
System.exit(0);
break;
default :
System.out.println("I'm sorry but "+menuSelect+" wasn't one of the options. ");
break;
}
}
}
}
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
