Print Mirror Lower Star Triangle in Java

Programming is always a fun and creative task. The more creative you can think the better programmer you will become. However, programming isn’t always about solving problems sometimes there’s also a fun aspect to it which makes it way more satisfying. If you are a programmer then you might have already played with patterns, strings, etc multiple times. Well, it’s also likely that you are already familiar with printing triangle patterns. So in today’s article, we will create a program to Print Mirror Lower Star Triangle in Java. With the help of this program, you will be able to print an amazing looking mirror copy of your printed star pattern using java language. Practising these types of questions also helps to get an upper edge in Competitive Programming.

 

So open up your IDE and let’s get started real quick. Once you understand the logic practice this program on your own to make your brain work in a problem-solving way. This is a somewhat tricky question you might get asked in an interview so make sure to practice it on your own after reading this article.

 

Also Read Print Alphabet Inverted Heart Pattern in Java

 

What’s The Approach?

 

Well, it’s a question that can be answered in many different ways based on your ability of creative thinking. But for the sake of simplicity, we are going to use different loops to print the same mirror star pattern for triangles in Java.

 

Java Program To Print Mirror Lower Star Triangle

 

1) for loop

 

// Java program to print Mirror Lower Star Triangle Pattern
// Using For loop
import java.io.*;

// Main class
class TechDecodeTutorials {

    // 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

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

 

2) while loop

 

// Java program to Print Mirror Lower Star Triangle Pattern
// using While loop
import java.io.*;

// Main Class
class TechDecodeTutorials {

    // 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

        // ill 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

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

 

3) do while loop

 

// Java program to print Mirror Lower Star Triangle Pattern
// using Do-while loop
import java.io.*;

// Main class
class TechDecodeTutorials {

    // 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

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

 

Ethix

I'm a coding geek interested in cyberspace who loves to write and read

Leave a Reply

Your email address will not be published.