Java Examples

Java Program - Find Smallest Number among three Numbers



Three numbers x, y and z are given and the smallest number among these three numbers can be found out using below methods.

Method 1: Using If statement

In the example below, only if conditional statements are used.

public class MyClass {
  static void smallest(int x, int y, int z) {
    int min = x;

    if (x <= y && x <= z)
      min = x;
    if (y <= x && y <= z)
      min = y;
    if (z <= x && z <= y)
      min = z;

    System.out.println("Smallest number among " + x + ", " + 
                        y + " and " + z + " is: " + min);
  }

  public static void main(String[] args) {
    smallest(100, 50, 25);
    smallest(50, 50, 25);
  }
}

The above code will give the following output:

Smallest number among 100 , 50 and 25 is:  25
Smallest number among 50 , 50 and 25 is:  25

Method 2: Using If-else statement

It can also be solved using If-else conditional statements.

public class MyClass {
  static void smallest(int x, int y, int z) {
    int min = x;

    if (x <= y && x <= z)
      min = x;
    else if (y <= x && y <= z)
      min = y;
    else 
      min = z;

    System.out.println("Smallest number among " + x + ", " + 
                        y + " and " + z + " is: " + min);
  }

  public static void main(String[] args) {
    smallest(100, 50, 25);
    smallest(50, 50, 25);
  }
}

The above code will give the following output:

Smallest number among 100 , 50 and 25 is:  25
Smallest number among 50 , 50 and 25 is:  25

Method 3: Using Nested If-else statement

The above problem can also be solved using nested if-else conditional statements.

public class MyClass {
  static void smallest(int x, int y, int z) {
    int min = x;

    if (x <= y) {
      if(x <= z) 
        min = x;
      else
        min = z;
    }
    else {
      if(y <= z) 
        min = y;
      else
        min = z;
    }

    System.out.println("Smallest number among " + x + ", " + 
                        y + " and " + z + " is: " + min);
  }

  public static void main(String[] args) {
    smallest(100, 50, 25);
    smallest(50, 50, 25);
  }
}

The above code will give the following output:

Smallest number among 100 , 50 and 25 is:  25
Smallest number among 50 , 50 and 25 is:  25

Method 4: Using ternary operator

The ternary operator can also be used here.

public class MyClass {
  static void smallest(int x, int y, int z) {
    int min = x;
    min = (x < y)? ((x < z)? x : z) : ((y < z)? y : z);
    System.out.println("Smallest number among " + x + ", " + 
                        y + " and " + z + " is: " + min);
  }

  public static void main(String[] args) {
    smallest(100, 50, 25);
    smallest(50, 50, 25);
  }
}

The above code will give the following output:

Smallest number among 100 , 50 and 25 is:  25
Smallest number among 50 , 50 and 25 is:  25