Java Pattern Printing Cheat Sheet
Pattern: Right-Angled Triangle
Output:
*
**
***
****
Logic: Stars in each row = row number
Code:
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
[Link]("*");
}
[Link]();
}
Pattern: Inverted Triangle
Output:
****
***
**
*
Logic: Stars in each row = n - row + 1
Code:
for (int i = n; i >= 1; i--) {
for (int j = 1; j <= i; j++) {
[Link]("*");
}
[Link]();
}
Pattern: Pyramid
Output:
*
***
*****
*******
Logic: Spaces = n - row, Stars = 2*row - 1
Code:
for (int i = 1; i <= n; i++) {
for (int s = 1; s <= n - i; s++) {
[Link](" ");
}
for (int j = 1; j <= 2*i - 1; j++) {
[Link]("*");
}
[Link]();
}
Pattern: Diamond
Output:
*
***
*****
*******
*****
***
*
Logic: Upper pyramid + Inverted pyramid
Code:
for (int i = 1; i <= n; i++) {
for (int s = 1; s <= n - i; s++) [Link](" ");
for (int j = 1; j <= 2*i - 1; j++) [Link]("*");
[Link]();
}
for (int i = n-1; i >= 1; i--) {
for (int s = 1; s <= n - i; s++) [Link](" ");
for (int j = 1; j <= 2*i - 1; j++) [Link]("*");
[Link]();
}
Pattern: Number Triangle
Output:
1
12
123
1234
Logic: Print column index j
Code:
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
[Link](j);
}
[Link]();
}
Pattern: Floyd’s Triangle
Output:
1
2 3
4 5 6
7 8 9 10
Logic: Use counter variable that increments every print
Code:
int count = 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
[Link](count + " ");
count++;
}
[Link]();
}
Pattern: Hollow Rectangle
Output:
*****
* *
* *
*****
Logic: If border (i==1, i==n, j==1, j==m) print *, else space
Code:
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
if (i == 1 || i == n || j == 1 || j == m) {
[Link]("*");
} else {
[Link](" ");
}
}
[Link]();
}