Basic Java Program: Comparing three floating point numbers and printing the smallest number

Hello!

I am still attempting to teach myself JAVA. I trying to write a program that prompts for three floating point numbers that have no more than three decimals and compare them. I am then trying to get it to output the smallest number. It seemed like a simple program and it probably is. I am just so new to java. Can anyone see what I am doing wrong?
/**
 * @(#)minimum3.java
 *
 * minimum3 application
 *
 * @author 
 * @version 1.00 2008/10/21
 */
 import java.util.Scanner; 
 
public class minimum3 {
    
    public static void main(String[] args) {
    	
    Scanner input = new Scanner(System.in );
    
    int number1;
    int number2;
    int number3;
    
    
    System.out.print( "Enter first number: ");
    	number1 = input.nextInt();
    	
    System.out.print( "Enter second number: ");
    	number2 = input.nextInt();
    	
    System.out.print( "Enter third number: ");
    	number3 = input.nextInt();
    
    
    if ( number1 < number2 ) && ( number 1 < number3 )
    		System.out.printf( "Smallest number is: %d\n, number1);
    		
    if ( number2 < number3 ) && ( number 2 < number1 )
    		System.out.printf( "Smallest number is: %d\n, number2);
    		
    if ( number3 < number 2) && ( number 3 < number1 )
    		System.out.printf( "Smallest number is: %d\n, number3);
    
 
}

Open in new window

LVL 22
Joseph MoodyBlogger and wearer of all hats.Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

rnevetCommented:
Well if you copy pasted it.. then you are missing closing  " in your printf calls to start with.
In bold:
System.out.printf( "Smallest number is: %d\n", number2);

0
manuel_mCommented:
You did not closed the System.out.printf.
Should be -> System.out.printf( "Smallest number is: %d\n", number1);
" after \n

The if condition should be:
if (condition) {
   // your code
}

// in your case
// see the additional braces for the condition
if ( ( number1 < number2 ) && ( number 1 < number3 ) ) {
  System.out.printf( "Smallest number is: %d\n", number1);
}

Open in new window

0
Joseph MoodyBlogger and wearer of all hats.Author Commented:
Thanks! I corrected that. I also saw I didn't have a closing bracket at the end. I am getting an "illegal start of expression" at line 32. Any clue as to why?
0
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

manuel_mCommented:
You also should capitalize your class name.
minimum3  to Minimum3 (and file name to Minimum3.java)
0
manuel_mCommented:
see code snippet. The closing bracket of your main method is missing.
public class minimum3 {
    
    public static void main(String[] args) {
        // your code
    } // this bracket is missing!
}

Open in new window

0
Joseph MoodyBlogger and wearer of all hats.Author Commented:
Thanks manuel_m! I made the changes but I am getting ')' expected at line 32 (along with a bunch of other errors).
/**
 * @(#)Minimum3.java
 *
 * Minimum3 application
 *
 * @author 
 * @version 1.00 2008/10/21
 */
 import java.util.Scanner; 
 
public class Minimum3 {
    
    public static void main(String[] args) {
    	
    Scanner input = new Scanner(System.in );
    
    int number1;
    int number2;
    int number3;
    
    
    System.out.print( "Enter first number: ");
    	number1 = input.nextInt();
    	
    System.out.print( "Enter second number: ");
    	number2 = input.nextInt();
    	
    System.out.print( "Enter third number: ");
    	number3 = input.nextInt();
    
    
  if ( ( number1 < number2 ) && ( number 1 < number3 ) ) 	
{
  System.out.printf( "Smallest number is: %d\n", number1);
}
 
  if ( ( number2 < number1 ) && ( number 2 < number3 ) ) 
{
  System.out.printf( "Smallest number is: %d\n", number2);
}
 
if ( ( number3 < number2 ) && ( number 3 < number1 ) ) 
{
  System.out.printf( "Smallest number is: %d\n", number3);
}
 
    
    }
}

Open in new window

0
manuel_mCommented:
You have the three variables
number1
number2
number3
In your if condition you are trying to check number 1 and number 2 with a blank.
Variables, methods, etc. do not have any blanks in their names!
0
Joseph MoodyBlogger and wearer of all hats.Author Commented:
Ok. That makes sense. How do I fix that though?
0
manuel_mCommented:
Just remove the blanks from the variable names in line 32, 37 and 42.

// line 32: replaced "number 1" with "number1"
if ( (number1 < number2) && (number1 < number3) ) {
// etc...

Open in new window

0
manuel_mCommented:
If you still want to check for floating point numbers you have to change the type of your 3 number variables to float.
float number1;
...

And getting the float from the input you have to take the method  input.nextFloat();

You also should think about an exception handling, if the user types not a float number (i.e. abc instead of 1.234).
Here you get more information: http://java.sun.com/docs/books/tutorial/essential/exceptions/
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Joseph MoodyBlogger and wearer of all hats.Author Commented:
Thank you so much for all of the help! I did not even see that I had those spaces!
0
manuel_mCommented:
You're welcome :-)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.