Program to Print Hexagonal Star Pattern
In this article we will see how to print hexagonal star pattern.
Example-1 When each side contains 4 stars * * * * * * * * * * * * * * * * * *
Example-2 When each side contains 6 stars * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Have you mastered basic programming topics of java and looking forward to mastering advanced topics in a java programming language? Go with these ultimate Advanced java programs examples with output & achieve your goal in improving java coding skills.
JAVA Code:
Method-1 : Static Star Character
import java.util.*; class Main { public static void main (String[] args) { Scanner sc=new Scanner(System.in); // Asks for user input to enter any number // Where that number of stars will be printed // in a side of hexagonal pattern System.out.print("Enter the number:"); int side = sc.nextInt(); int len = 2 * side - 1; // Printing upper part for (int i = 0; i < side; i++) { int element = i + side; // prints the star and spaces for (int k = 0; k < element; k++) { // printing the star if ((k == side + i - 1) || (k == side - i - 1)) System.out.print("*"); // printing the space else System.out.print(" "); } System.out.print("\n"); } // Printing middle part // Two vertical lines will be printed with middle space for (int i = 0; i < side - 2; i++) { for (int j = 0; j < len; j++) { // printing star if (j == 0 || j == len - 1) System.out.print("*"); // printing space else System.out.print(" "); } System.out.print("\n"); } // Printing lower part int r = side - 1; for (int i = r; i >= 0; i--) { int elem = i + side; for (int k = 0; k < elem; k++) { // printing the star if ((k == side + i - 1) || (k == side - i - 1)) System.out.print("*"); // printing the space else System.out.print(" "); } System.out.print("\n"); } } }
Output: Enter any number: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Method-2 : User Input Character
import java.util.*; class Main { public static void main (String[] args) { Scanner sc=new Scanner(System.in); // Asks for user input to enter any number // Where that number of stars will be printed // in a side of hexagonal pattern System.out.print("Enter the number:"); int side = sc.nextInt(); // sks for user input to enter any character // Where that character will be printed //in each side of hexagonal pattern System.out.print("Enter the character:"); char ch= sc.next().charAt(0); int len = 2 * side - 1; // Printing upper part for (int i = 0; i < side; i++) { int element = i + side; // prints the star and spaces for (int k = 0; k < element; k++) { // printing the star if ((k == side + i - 1) || (k == side - i - 1)) System.out.print(ch); // printing the space else System.out.print(" "); } System.out.print("\n"); } // Printing middle part // Two vertical lines will be printed with middle space for (int i = 0; i < side - 2; i++) { for (int j = 0; j < len; j++) { // printing star if (j == 0 || j == len - 1) System.out.print(ch); // printing space else System.out.print(" "); } System.out.print("\n"); } // Printing lower part int r = side - 1; for (int i = r; i >= 0; i--) { int elem = i + side; for (int k = 0; k < elem; k++) { // printing the star if ((k == side + i - 1) || (k == side - i - 1)) System.out.print(ch); // printing the space else System.out.print(" "); } System.out.print("\n"); } } }
Output: Enter any number:6 Enter any character:@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
Related Java Star Pattern Programs: