Patterns in Java ? Edureka
Java Interviews can give a hard time to programmers, such is the severity of the process. The ones who have attended the process will know that a pattern program is 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:
Pattern Programs in Java
- Star Patterns in Java
- Numeric Patterns
- Character Patterns
Let?s get started. 🙂
Star Patterns in Java
First, let us begin with the basic and the commonly asked pattern program in Java i.e Pyramid.
1. Pyramid Program
* * * * * * * * * * * * * * *
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); } }
2. Right Triangle Star Pattern
** ** * ** * * ** * * * *
Let?s write the java code to understand this pattern better.
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
* * * * * * * * * * * * * * *
Let?s write the java code to understand this pattern better.
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); } }
4. Diamond Shape Pattern Program in Java
Enter the number of rows: 5
* *** ***** **************** ******* ***** *** *
Let?s write the java code to understand this pattern better.
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(“”);}}}
5. Downward Triangle Star Pattern
Enter the number of rows: 5
* * * * * * * * * * * * * * *
Let?s write the java code to understand this pattern better.
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(); } }
6. Mirrored Right Triangle Star Program
Enter the number of rows: 5
* ** *** **** ***********
Let?s write the java code to understand this pattern better.
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(); }}
7. Reversed Pyramid Star Pattern
Enter the number of rows: 5
* * * * * * * * * * * * * * *
Let?s write the java code to understand this pattern better.
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
***** **** *** ** *
Let?s write the java code to understand this pattern better.
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(); } }
9. Right Pascal?s Triangle
Enter the number of rows: 5
* * * * * * * * * * * * * * * * * * * * * * * * *
Let?s write the java code to understand this pattern better.
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(); }}
10. Left Triangle Pascal?s
Enter the number of rows: 5
* ** *** ********* **** *** ** *
Let?s write the java code to understand this pattern better.
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(); }}
11. Sandglass Star Pattern
Enter the number of rows: 5
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Let?s write the java code to understand this pattern better.
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(); }}
12. Alphabet A Pattern
** * ***** ** ** *
Let?s write the java code to understand this pattern better.
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); } }
13. Triangle Star pattern
Enter the number of rows: 5
* * * * * * **********
Let?s write the java code to understand this pattern better.
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(); } }
14. Down triangle
Enter the number of rows: 5
********* * * * * * * *
Let?s write the java code to understand this pattern better.
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();}}
15. Diamond Star Pattern
Enter the number of rows: 5
* * * * * * ** * * * * * * * *
Let?s write the java code to understand this pattern better.
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 programs in Java. Let us move further and implement some Numeric patterns.
Numeric Pattern in Java
1. Simple number program
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Let?s write the java code to understand this pattern better.
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); } }
2. Number Pattern Program in java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Let?s write the java code to understand this pattern better.
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(); } } }
3. Pascal?s Triangle Program in Java
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
Let?s write the java code to understand this pattern better.
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(); } } }
4. Diamond Pattern Program in Java
1 212 321234321234 32123 212 1
Let?s write the java code to understand this pattern better.
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(); } }}
5. Number Pattern Programs in Java
Enter the number of rows: 5
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
Let?s write the java code to understand this pattern better.
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(); }}
6. Descending order Pattern
Enter the number of rows: 5
5 5 4 5 4 3 5 4 3 2 5 4 3 2 1
Let?s write the java code to understand this pattern better.
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();}}
7. Right Triangle Numeric Pattern
Enter the number of rows: 5
1 2 1 3 2 1 4 3 2 1 5 4 3 2 1
Let?s write the java code to understand this pattern better.
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();}}
8. Binary Number Pattern
Enter the number of rows: 5
1010101010101010101010101
Let?s write the java code to understand this pattern better.
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(); }}
9. Zeros/ ones Pattern Programs
Enter the number of rows: 5
110101101010101
Let?s write the java code to understand this pattern better.
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(); }}
10. Diamond Numeric Pattern
1 2 3 4 5 2 3 4 5 3 4 5 4 5 5 4 5 3 4 5 2 3 4 5 1 2 3 4 5
Let?s write the java code to understand this pattern better.
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.
Alphabet/ Character Patterns in Java
1. Right Alphabetic triangle
A A B A B C A B C D A B C D E A B C D E F
Let?s write the java code to understand this pattern better.
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(); } }}
2. Alphabet/ Character Pattern Programs
A B B C C C D D D D E E E E E F F F F F F
Let?s write the java code to understand this pattern better.
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(); } }}
3. K Shape Character Pattern Program
A B C D E F A B C D E A B C D A B C A B A A A B A B C A B C D A B C D E A B C D E F
Let?s write the java code to understand this pattern better.
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();}}}
4. Triangle Character Pattern Program in Java
A A B A B C A B C D A B C D E A B C D E F
Let?s write the java code to understand this pattern better.
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(); }}}
5. Diamond Pattern in Java
Enter a Character between A to Z : F
A B B C C D D E EF F E E D D C C B B A
Let?s write the java code to understand this pattern better.
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(); } }}
So this brings us to the end of the top 30 pattern programs in java blog. I hope you found it informative and helped you in understanding Java Fundamentals. If you wish to check out more articles on the market?s most trending technologies like Artificial Intelligence, DevOps, Ethical Hacking, then you can refer to Edureka?s official site.
Do look out for other articles in this series which will explain the various other aspects of Java.
1. Object Oriented Programming
2. Inheritance in Java
3. Polymorphism in Java
4. Abstraction in Java
5. Java String
6. Java Array
7. Java Collections
8. Java Threads
9. Introduction to Java Servlets
10. Servlet and JSP Tutorial
11. Exception Handling in Java
12. Advanced Java Tutorial
13. Java Interview Questions
14. Java Programs
15. Kotlin vs Java
16. Dependency Injection Using Spring Boot
17. Comparable in Java
18. Top 10 Java frameworks
19. Java Reflection API
20. Java Tutorial
21. Core Java Cheat Sheet
22. Socket Programming In Java
23. Java OOP Cheat Sheet
24. Annotations in Java
25. Library Management System Project in Java
26. Trees in Java
27. Machine Learning in Java
28. Top Data Structures & Algorithms in Java
29. Java Developer Skills
30. Top 55 Servlet Interview Questions
31. Top Java Projects
32. Java Strings Cheat Sheet
33. Nested Class in Java
34. Java Collections Interview Questions and Answers
35. How to Handle Deadlock in Java?
36. Top 50 Java Collections Interview Questions You Need to Know
37. What is the concept of String Pool in Java?
38. What is the difference between C, C++, and Java?
39. Palindrome in Java- How to check a number or string?
40. Top MVC Interview Questions and Answers You Need to Know
41. Top 10 Applications of Java Programming Language
Originally published at https://www.edureka.co on June 22, 2019.