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
- Using for loop
- Using while loop
- Using do-while loop
Method 1: Using for Loop
Example
Java
// Java program to print Mirror Lower Star Triangle Pattern// Using For loopimport java.io.*;// Main classclass 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(); } }} |
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
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 loopimport java.io.*;// Main Classclass 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:
Method 3: Using do-while Loop
Implementation:
Example
Java
// Java program to print Mirror Lower Star Triangle Pattern// using Do-while loopimport java.io.*;// Main classclass 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); }} |
*************
***********
*********
*******
*****
***
*
*
***
*****
*******
*********
***********
*************
Time complexity: O(N2) where N is given input size of triangle
Auxiliary Space : O(1) because it using constant variable
