But I get the error when run: Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:864) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nextInt(Scanner.java:2117) at java.util.Scanner.nextInt(Scanner.java:2076) at threeincreasingnumbers.Threeincreasingnumbers.main(Threeincreasingnumbers.java:21) I assume there is a problem comparing int, double and long numbers. How can I solve this problem?

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter8: Arrays
Section: Chapter Questions
Problem 20RQ
icon
Related questions
Question

Description: The program prompts the user to enter three numbers and invokes the  method: public static void displayIncreasingNumbers(int num1, double num2, long num3) to display them in increasing order.

Below is my code:

package threeincreasingnumbers;

import java.util.Scanner;

public class Threeincreasingnumbers {

public static void main(String[] args) {
// Create Scanner
Scanner scan = new Scanner(System.in);

// Prompt the user to enter three numbers
System.out.print("Enter three numbers: ");


int num1 = scan.nextInt();

double num2 = scan.nextDouble();

long num3 = scan.nextLong();

// Display numbers in increasing order
displayIncreasingNumbers(num1, num2, num3);

}
public static void displayIncreasingNumbers(int num1, double num2, long num3) {
double temp;


if (num2 < num1 && num2 < num3){
temp = num1;
num1 = (int) (double) num2;
num2 = temp;
}
else if (num3 < num1 && num3 < num2) {
temp = num1;
num1 = (int) num3;
num3 = (long) temp;
}
if (num3 < num2) {
temp = num2;
num2 = num3;
num3 = (long) temp;
}

// Display result
System.out.println(num1 + " " + num2 + " " + num3);
}
}

But I get the error when run: Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at threeincreasingnumbers.Threeincreasingnumbers.main(Threeincreasingnumbers.java:21)

I assume there is a problem comparing int, double and long numbers. How can I solve this problem?

 

 

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Knowledge Booster
void method
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