Full Stack Web Development Internship Program
- 29k Enrolled Learners
- Weekend/Weekday
- Live Class
Java Interviews can be difficult for programmers, given the severity of the process. Those who have attended the process will know that a Java pattern program ought to pop up in the list of programs.
This article precisely focuses on pattern programs in Java. I have classified the programs under the following clusters :
Printing patterns in Java is a common exercise for beginners. Patterns are designs made by arranging symbols or numbers in a specific way. This task helps you understand loops and control statements, which are fundamental concepts in programming.
Patterns can be simple, like a pyramid, or more complex, like a pyramid of numbers. Learning to print these patterns helps improve your problem solving skills.
In Java, loops and control statements are used to print patterns. Loops repeat a block of code multiple times, and control statements let you make decisions in your code.
First, let us begin with the basic and commonly asked pattern program in Java i.e Pyramid.
Let’s write the java code to understand this pattern better.
public class Edureka { public static void pyramidPattern(int n) { for (int i=0; i<n; i++) //outer loop for number of rows(n) { for (int j=n-i; j>1; j--) //inner loop for spaces { System.out.print(" "); //print space } for (int j=0; j<=i; j++ ) //inner loop for number of columns { System.out.print("* "); //print star } System.out.println(); //ending line after each row } } public static void main(String args[]) //driver function { int n = 5; pyramidPattern(n); } }
public class Edureka { public static void rightTriangle(int n) { int i, j; for(i=0; i<n; i++) //outer loop for number of rows(n) { for(j=2*(n-i); j>=0; j--) // inner loop for spaces { System.out.print(" "); // printing space } for(j=0; j<=i; j++) // inner loop for columns { System.out.print("* "); // print star } System.out.println(); // ending line after each row } } public static void main(String args[]) { int n = 5; rightTriangle(n); } }
3. Left Triangle Star Pattern
public class Edureka { public static void printStars(int n) { int i, j; for(i=0; i<n; i++) //outer loop for number of rows(n) { for(j=2*(n-i); j>=0; j--) // inner loop for spaces { System.out.print(" "); // printing space } for(j=0; j<=i; j++) // inner loop for columns { System.out.print("* "); // print star } System.out.println(); // ending line after each row } } public static void main(String args[]) { int n = 5; printStars(n); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String args[]) { int n, i, j, space = 1; System.out.print("Enter the number of rows: "); Scanner s = new Scanner(System.in); n = s.nextInt(); space = n - 1; for (j = 1; j<= n; j++) { for (i = 1; i<= space; i++) { System.out.print(" "); } space--; for (i = 1; i <= 2 * j - 1; i++) { System.out.print("*"); } System.out.println(""); } space = 1; for (j = 1; j<= n - 1; j++) { for (i = 1; i<= space; i++) { System.out.print(" "); } space++; for (i = 1; i<= 2 * (n - j) - 1; i++) { System.out.print("*"); } System.out.println(""); } } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); //takes input from user int rows = sc.nextInt(); for (int i= rows-1; i>=0 ; i--) { for (int j=0; j<=i; j++) { System.out.print("*" + " "); } System.out.println(); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter number of rows: "); // takes input from user int rows = sc.nextInt(); for (int i= 0; i<= rows; i++) { for (int j=1; j<=rows-i; j++) { System.out.print(" "); } for (int k=0;k<=i;k++) { System.out.print("*"); } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i= 0; i<= rows-1 ; i++) { for (int j=0; j<=i; j++) { System.out.print(" "); } for (int k=0; k<=rows-1-i; k++) { System.out.print("*" + " "); } System.out.println(); } sc.close(); } }
8. Right down Mirror Star Pattern
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // takes input System.out.println("Enter number of rows: "); int rows = sc.nextInt(); for (int i= rows; i>= 1; i--) { for (int j=rows; j>i;j--) { System.out.print(" "); } for (int k=1;k<=i;k++) { System.out.print("*"); } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i= 0; i<= rows-1 ; i++) { for (int j=0; j<=i; j++) { System.out.print("*"+ " "); } System.out.println(""); } for (int i=rows-1; i>=0; i--) { for(int j=0; j <= i-1;j++) { System.out.print("*"+ " "); } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i= 1; i<= rows ; i++) { for (int j=i; j <rows ;j++) { System.out.print(" "); } for (int k=1; k<=i;k++) { System.out.print("*"); } System.out.println(""); } for (int i=rows; i>=1; i--) { for(int j=i; j<=rows;j++) { System.out.print(" "); } for(int k=1; k<i ;k++) { System.out.print("*"); } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i= 0; i<= rows-1 ; i++) { for (int j=0; j <i; j++) { System.out.print(" "); } for (int k=i; k<=rows-1; k++) { System.out.print("*" + " "); } System.out.println(""); } for (int i= rows-1; i>= 0; i--) { for (int j=0; j< i ;j++) { System.out.print(" "); } for (int k=i; k<=rows-1; k++) { System.out.print("*" + " "); } System.out.println(""); } sc.close(); } }
import java.util.Scanner; public class Edureka { // Java program to print alphabet A pattern void display(int n) { // Outer for loop for number of lines for (int i = 0; i<=n; i++) { // Inner for loop for logic execution for (int j = 0; j<= n / 2; j++) { // prints two column lines if ((j == 0 || j == n / 2) && i != 0 || // print first line of alphabet i == 0 && j != n / 2 || // prints middle line i == n / 2) System.out.print("*"); else System.out.print(" "); } System.out.println(); } } public static void main(String[] args) { Scanner sc = new Scanner(System.in); Edureka a = new Edureka(); a.display(7); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i=1; i<= rows ; i++) { for (int j = i; j < rows ; j++) { System.out.print(" "); } for (int k = 1; k <= (2*i -1) ;k++) { if( k==1 || i == rows || k==(2*i-1)) { System.out.print("*"); } else { System.out.print(" "); } } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i=rows; i>= 1 ; i--) { for (int j = i; j < rows ; j++) { System.out.print(" "); } for (int k = 1; k <= (2*i -1) ;k++) { if( k==1 || i == rows || k==(2*i-1)) { System.out.print("*"); } else { System.out.print(" "); } } System.out.println(""); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i=1; i<= rows ; i++) { for (int j = rows; j > i ; j--) { System.out.print(" "); } System.out.print("*"); for (int k = 1; k < 2*(i -1) ;k++) { System.out.print(" "); } if( i==1) { System.out.println(""); } else { System.out.println("*"); } } for (int i=rows-1; i>= 1 ; i--) { for (int j = rows; j > i ; j--) { System.out.print(" "); } System.out.print("*"); for (int k = 1; k < 2*(i -1) ;k++) { System.out.print(" "); } if( i==1) System.out.println(""); else System.out.println("*"); } sc.close(); } }
Now that we have implemented star pattern program in Java. Let us move further and implement some Numeric patterns.
public class Edureka { public static void printNums(int n) { int i, j,num; for(i=0; i<n; i++) // outer loop for rows { num=1; for(j=0; j<=i; j++) // inner loop for rows { // printing num with a space System.out.print(num+ " "); //incrementing value of num num++; } // ending line after each row System.out.println(); } } public static void main(String args[]) { int n = 5; printNums(n); } }
import java.util.Scanner; public class Edureka { public static void main(String[] args) { int i, j, k = 1; for (i = 1; i <= 5; i++) { for (j = 1; j< i + 1; j++) { System.out.print(k++ + " "); } System.out.println(); } } }
import java.util.Scanner; public class Edureka { public static void main(String[] args) { int n = 5; for (int i = 0; i < n; i++) { int number = 1; System.out.printf("%" + (n - i) * 2 + "s", ""); for (int j = 0; j <= i; j++) { System.out.printf("%4d", number); number = number * (i - j) / (j + 1); } System.out.println(); } } }
import java.util.Scanner; public class Edureka { public static void main(String[] args) { for (int i = 1; i <= 4; i++) { int n = 4; for (int j = 1; j<= n - i; j++) { System.out.print(" "); } for (int k = i; k >= 1; k--) { System.out.print(k); } for (int l = 2; l <= i; l++) { System.out.print(l); } System.out.println(); } for (int i = 3; i >= 1; i--) { int n = 3; for (int j = 0; j<= n - i; j++) { System.out.print(" "); } for (int k = i; k >= 1; k--) { System.out.print(k); } for (int l = 2; l <= i; l++) { System.out.print(l); } System.out.println(); } } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //Taking rows value from the user System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i = 1; i <= rows; i++) { for (int j = 1; j <= i; j++) { System.out.print(i+" "); } System.out.println(); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //Taking rows value from the user System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i = rows; i >= 1; i--) { for (int j = rows; j >= i; j--) { System.out.print(j+" "); } System.out.println(); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i = 1; i <= rows; i++) { for (int j = i; j >= 1; j--) { System.out.print(j+" "); } System.out.println(); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i = 1; i <= rows; i++) { int num; if(i%2 == 0) { num = 0; for (int j = 1; j <= rows; j++) { System.out.print(num); num = (num == 0)? 1 : 0; } } else { num = 1; for (int j = 1; j <= rows; j++) { System.out.print(num); num = (num == 0)? 1 : 0; } } System.out.println(); } sc.close(); } }
Enter the number of rows: 5
import java.util.Scanner; public class Edureka { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the number of rows: "); int rows = sc.nextInt(); for (int i = 1; i <= rows; i++) { for (int j = 1; j <= i; j++) { if(j%2 == 0) { System.out.print(0); } else { System.out.print(1); } } System.out.println(); } sc.close(); } }
import java.util.Scanner; public class Edureka { public static void main(String[] args) { int n = 5; for (int i = 1; i <= n; i++) { for (int j = 1; j < i; j++) { System.out.print(" "); } for (int k = i; k <= n; k++) { System.out.print(k+" "); } System.out.println(); } for (int i = n-1; i >= 1; i--) { for (int j = 1; j < i; j++) { System.out.print(" "); } for (int k = i; k <= n; k++) { System.out.print(k+" "); } System.out.println(); } } }
Now that we have implemented numeric pattern programs in Java. Let us move further and implement some character/ alphabet patterns.
import java.util.Scanner; public class Edureka { public static void main(String[] args) { int alphabet = 65; for (int i = 0; i <= 5; i++) { for (int j = 0; j <= i; j++) { System.out.print((char) (alphabet + j) + " "); } System.out.println(); } } }
import java.util.Scanner; public class Edureka { public static void main(String[] args) { int alphabet = 65; for (int i = 0; i<= 5; i++) { for (int j = 0; j <= i; j++) { System.out.print((char) alphabet + " "); } alphabet++; System.out.println(); } } }
import java.util.Scanner; public class Edureka {public static void main(String[] args) { for (int i = 5; i >= 0; i--) { int alphabet = 65; for (int j = 0; j <= i; j++) { System.out.print((char) (alphabet + j) + " "); } System.out.println(); } for (int i = 0; i<= 5; i++) { int alphabet = 65; for (int j = 0; j <= i; j++) { System.out.print((char) (alphabet + j) + " "); } System.out.println(); } } }
public class Edureka { public static void main(String[] args) { for (int i = 0; i <= 5; i++) { int alphabet = 65; for (int j = 5; j > i; j--) { System.out.print(" "); } for (int k = 0; k <= i; k++) { System.out.print((char) (alphabet + k) + " "); } System.out.println(); } } }
Enter a Character between A to Z : F
import java.util.Scanner; public class Edureka {public static void main(String[] args) { char[] letter = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' }; int letter_number = 0; String[] diamond = new String[26]; // array of strings System.out.print("Enter a Character between A to Z : "); Scanner reader = new Scanner(System.in); try { char user_letter = reader.next("[A-Z]").charAt(0); // search for letter number in the array letter for (int i = 0; i < letter.length; i++) { if (letter[i] == user_letter) { letter_number = i; break; } } // construct diamond for (int i = 0; i <= letter_number; i++) { diamond[i] = ""; // add initial spaces for (int j = 0; j < letter_number - i; j++) { diamond[i] += " "; } // add letter diamond[i] += letter[i]; // add space between letters if (letter[i] != 'A') { for (int j = 0; j < 2 * i - 1; j++) { diamond[i] += " "; } // add letter diamond[i] += letter[i]; } // Draw the first part of the diamond System.out.println(diamond[i]); } for (int i = letter_number - 1; i >= 0; i--) { // Draw the second part of the diamond // Writing the diamondArray in reverse order System.out.println(diamond[i]); } } catch (Exception e) { e.printStackTrace(); } finally { reader.close(); } } }
This brings us to the end of the top 30 pattern programs in Java. I hope you found it informative and that it helped you understand Java Fundamentals.
Practicing Java pattern programs boosts a developer’s ability to think analytically. These exercises are great for preparing for interviews and solving difficult coding problems. They also help in understanding the core concepts of Java, improving coding efficiency, and enhancing problem-solving skills. Once you’ve practiced pattern programs, you can also check out popular Java interview questions to ensure you’re always ready for interviews.
Java Pattern Programs are pieces of code that create different patterns using loops, like stars, numbers, or letters.
Java pattern programs help you understand loops and logic in programming, improving your coding skills.
It includes patterns like triangles, pyramids, diamonds, and rectangles made of stars or numbers.
You should break the pattern into rows and columns, use nested loops to print each part, and build the pattern step by step.
Start with a simple pattern program like a pyramid of stars, practice regularly, and gradually try more complex patterns.
Check out the Java Certification Course by Edureka, a trusted online learning company with a network of more than 250,000 satisfied learners spread across the globe. We are here to help you with every step of your journey.
Do you have a question for us? Please mention it in the comments section, and we will respond as soon as possible.
Course Name | Date | Details |
---|---|---|
Java Course Online | Class Starts on 1st March,2025 1st March SAT&SUN (Weekend Batch) | View Details |
edureka.co