Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

JAVA swaping values // Swap.java - This program determines the minimum and maxim

ID: 3862689 • Letter: J

Question

JAVA swaping values

// Swap.java - This program determines the minimum and maximum of three values input by
// the user and performs necessary swaps.
// Input: Three int values.
// Output: The numbers in numerical order.

import java.util.Scanner;

public class Swap
{
public static void main(String args[]) throws Exception
{
// Declare variables.
String firstNumber; // String version of first number.
String secondNumber; // String version of second number.
String thirdNumber; // String version of third number.
int first = 0; // First number.
int second = 0; // Second number.
int third = 0; // Third number.
int temp; // Used to swap numbers.
   Scanner input = new Scanner(System.in);


// Get user input.
System.out.print("Enter first number: ");
if((firstNumber = input.nextLine())) != null)
{
System.out.print("Enter second number: ");
secondNumber = input.nextLine();
System.out.print("Enter third number: ");
thirdNumber = input.nextLine();
// Convert Strings to int.
first = Integer.parseInt(firstNumber);
second = Integer.parseInt(secondNumber);
third = Integer.parseInt(thirdNumber);
}
  
// Test to see if the first number is greater than the second number.
if(firstNumber.compareTo(secondNumber)>0)
{
String temp = secondNumber;
secondNumber = firstNumber;
firstNumber = temp;
}
// Test to see if the second number is greater than the third number.
if(secondNumber.compareTo(thirdNumber)>0)
{
String temp = thirdNumber;
thirdNumber = secondNumber;
secondNumber = temp;
}
  
// Test to see if the first number is greater than the second number again.
if(firstNumber.compareTo(secondNumber)>0)
{
String temp = secondNumber;
secondNumber = firstNumber;
firstNumber = temp;
}
// Print values in numerical order.
System.out.println("Smallest: " + first);
System.out.println("Next largest: " + second);
System.out.println("Largest: " + third);

// Exit the program.
System.exit(0);

} // End of main() method.
} // End of Swap class.

What is wrong with my swap? it is saying illegal start on line 25, which is this line:

if((firstNumber = input.nextLine())) != null)

it also says that this line above needs a ;

but it is an if statement so it does not need one correct?

Explanation / Answer

if ( (firstNumber = input.nextLine() )   ) != null )

in the above condition line u used one extra ")" symbol ie i underline that symbol condition for this only u get illegal start

corrected program :

import java.util.Scanner;
public class Swap
{
public static void main(String args[]) throws Exception
{
// Declare variables.
String firstNumber=null; // String version of first number.
String secondNumber=null; // String version of second number.
String thirdNumber=null; // String version of third number.
int first = 0; // First number.
int second = 0; // Second number.
int third = 0; // Third number.
String temp; // Used to swap numbers.
Scanner input = new Scanner(System.in);
// Get user input.
System.out.print("Enter first number: ");
if((firstNumber = input.nextLine()) != null)
{
System.out.print("Enter second number: ");
secondNumber = input.nextLine();
System.out.print("Enter third number: ");
thirdNumber = input.nextLine();
// Convert Strings to int.
first = Integer.parseInt(firstNumber);
second = Integer.parseInt(secondNumber);
third = Integer.parseInt(thirdNumber);
}
  
// Test to see if the first number is greater than the second number.
if(firstNumber.compareTo(secondNumber)>0)
{
temp = firstNumber;
firstNumber = secondNumber;
secondNumber = temp;
}
// Test to see if the second number is greater than the third number.
if(secondNumber.compareTo(thirdNumber)>0)
{
temp = secondNumber;
secondNumber = thirdNumber ;
thirdNumber = temp;
}
  
// Test to see if the first number is greater than the second number again.
if(firstNumber.compareTo(secondNumber)>0)
{
   temp = firstNumber;
   firstNumber = secondNumber;
   secondNumber = temp;
}
// Print values in numerical order.
System.out.println("Smallest: " + second);
System.out.println("Next largest: " + first);
System.out.println("Largest: " + third);
// Exit the program.
System.exit(0);
} // End of main() method.
} // End of Swap class.

output :

Enter first number: 10
Enter second number: 5
Enter third number: 20
Smallest: 5
Next largest: 10
Largest: 20