Open In App

Java Program to Print Mirror Lower Star Triangle Pattern

Last Updated : 12 Sep, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we are going to learn how to print mirror lower star triangle patterns in Java. 

Illustration:

Input: number = 7
Output:
* * * * * * * 
 * * * * * * 
  * * * * * 
   * * * * 
    * * * 
     * * 
      * 
      * 
     * * 
    * * * 
   * * * * 
  * * * * * 
 * * * * * * 
* * * * * * * 

Methods: We can print mirror lower star triangle pattern using loops, so 

  1. Using for loop
  2. Using while loop
  3. Using do-while loop

Method 1: Using for Loop

Example

Java




// Java program to print Mirror Lower Star Triangle Pattern
// Using For loop
import java.io.*;
 
// Main class
class GFG {
 
    // Method
    // Main driver method
    public static void main(String[] args)
    {
        // Declare and initialize variable to
        // Size of the triangle
        int number = 7;
 
        // Declaring two variables for rows and columns
        int m, n;
 
        // Outer loop 1
        // Prints the first half triangle
        for (m = 1; m <= number; m++) {
 
            // Inner loop 1
            for (n = 1; n < m; n++) {
                // Print whitespace
                System.out.print(" ");
            }
 
            // Inner loop 2
            for (n = m; n <= number; n++) {
                // Print star
                System.out.print("*"
                                 + " ");
            }
 
            // Ending line after each row
            System.out.println();
        }
 
        // Outer loop 2
        // prints the second half triangle
        for (m = number - 1; m >= 0; m--) {
 
            // Inner loop 1
            for (n = 0; n < m; n++) {
                // Print whitespace
                System.out.print(" ");
            }
 
            // Inner loop 2
            for (n = m; n <= number - 1; n++) {
                // Print star
                System.out.print("*"
                                 + " ");
            }
 
            // Ending line after each row
            System.out.println();
        }
    }
}


Output

* * * * * * * 
 * * * * * * 
  * * * * * 
   * * * * 
    * * * 
     * * 
      * 
      * 
     * * 
    * * * 
   * * * * 
  * * * * * 
 * * * * * * 
* * * * * * * 

Time complexity: O(n^2) where n is given input number
Auxiliary Space: O(1) because it using constant variable

Method 2: Using While Loop

Example

Java




// Java program to Print Mirror Lower Star Triangle Pattern
// using While loop
import java.io.*;
 
// Main Class
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Declare and initialize variable to
        // Size of the triangle
        int number = 7;
 
        int m = number;
        int n;
 
        // Outer loop 1
        // prints the first half triangle
 
        // Till condition holds true
        while (m > 0) {
            n = 0;
 
            // Inner loop 1
            // prints space until n++ < number - m is false
            while (n++ < number - m) {
                // print whitespace
                System.out.print(" ");
            }
 
            n = 0;
 
            // Inner loop 2
            // Prints star until n++ < (m * 2) - 1 is false
            while (n++ < (m * 2) - 1) {
                // Print star
                System.out.print("*");
            }
 
            // Ending line after each row
            System.out.println();
 
            // Decrementing by one
            m--;
        }
 
        m = 1;
 
        // Outer loop 2
        // prints the second half triangle
        while (m <= number) {
            n = 0;
 
            // Inner loop 1
            // prints space until n++ < number - m is false
            while (n++ < number - m) {
                // Print whitespace
                System.out.print(" ");
            }
 
            n = 0;
 
            // Inner loop 2
            // Prints star until n++ < (m * 2) - 1 is false
            while (n++ < (m * 2) - 1) {
                // print star
                System.out.print("*");
            }
 
            // Ending line after each row
            System.out.println();
 
            m++;
        }
    }
}


Output

*************
 ***********
  *********
   *******
    *****
     ***
      *
      *
     ***
    *****
   *******
  *********
 ***********
*************

 

Output:

 

Method 3: Using do-while Loop

 

Implementation:

 

Example

 

Java




// Java program to print Mirror Lower Star Triangle Pattern
// using Do-while loop
import java.io.*;
 
// Main class
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Declare variable with the
        // Size of the triangle
        int number = 7;
 
        int m = number;
        int n;
 
        // Outer loop 1
        // prints the first half triangle
        do {
            n = 0;
 
            // Inner loop 1
            // prints space until n++ < number - m is false
            do {
                // Print whitespaces
                System.out.print(" ");
 
            } while (n++ < number - m);
 
            n = 0;
 
            // Inner loop 2
            // prints star until n++ < m * 2 - 2 is false
            do {
                // Print star
                System.out.print("*");
            }
 
            while (n++ < m * 2 - 2);
 
            System.out.println("");
 
        }
 
        // Condition check for do-while
        while (--m > 0);
 
        m = 1;
 
        // Outer loop 2
        // prints the second half triangle
        do {
            n = 0;
 
            // Inner loop 1
            // prints space until n++ < (number - m) is
            // false
            do {
                // Print whitespace
                System.out.print(" ");
 
            } while (n++ < (number - m));
 
            n = 0;
 
            // Inner loop 2
            // prints star until n++ < (m * 2) - 2 is false
            do {
                // Print star
                System.out.print("*");
            }
 
            while (n++ < (m * 2) - 2);
 
            System.out.println("");
 
        }
 
        // Condition check for do-while
        while (++m <= number);
    }
}


Output

 *************
  ***********
   *********
    *******
     *****
      ***
       *
       *
      ***
     *****
    *******
   *********
  ***********
 *************

Time complexity: O(N2) where N is given input size of triangle
Auxiliary Space : O(1) because it using constant variable



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads