Pattern Printing
This page consists 100+ different types of pattern printing concepts in java
BASIC PATTERN PROGRAMS
BASIC PATTERN PROGRAMS
Print the desired pattern:
import java.util.*;
public class Main {
public static void main(String [] args){
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
for(int i=1;i<=N;i++)
{
int K=i;
for(int j=1;j<=(2*i)-1;j++)
{
if(j==(2*i-1))
System.out.print(K);
else
System.out.print(K+" ");
if(j<=((2*i-1)/2))
{
if(K==9)
K=0;
else
K++;
}
else
{
if(K==0)
K=9;
else
K--;
}
}
System.out.println();
}
}
}
input:
6
output:
1
2 3 2
3 4 5 4 3
4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5
6 7 8 9 0 1 0 9 8 7 6
Pattern printing in alphabetical order sort
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
ArrayList<Character> list=new ArrayList<>();
String str=sc.next();
int l=str.length();
String temp=str.toLowerCase();
for(char ch='a';ch<='z';ch++)
{
for(int index=0;index<l;index++)
{
if(ch==temp.charAt(index))
list.add(str.charAt(index));
else
list.add('*');
}
if(list.contains(ch)||list.contains(Character.toUpperCase(ch)))
{
for(int index=0;index<list.size();index++)
{
System.out.print(list.get(index));
}
System.out.println();
}
list.clear();
}
}
}
input:
Skillrack
output:
******a**
*******c*
**i******
*k******k
***ll****
*****r***
S********
String replaced with astriesk pattern
import java.util.*;
public class Main {
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
String str=sc.next();
int l=str.length();
int d=0;
int m=n;
for(int index=1;index<=n;index++)
{
StringBuilder sb1=new StringBuilder();
d=m;
for(int i=0;i<l;i++)
{
if(i==d-1)
{
sb1.append('*');
d=d+n;
}
else
{
sb1.append(str.charAt(i));
}
}
m--;
String str1=sb1.toString();
System.out.println(str1);
str=str1.substring(0,l);
}
}
}
/*
input 1:
3
skillrack
output 1:
sk*ll*ac*
s**l**a**
*********
input 2:
5
keyboard
output 2:
keyb*ard
key**ard
ke***ar*
k****a**
********
print integers like 7 segment display
import java.util.*;
Public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int m=sc.nextInt();
int n=sc.nextInt();
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(m==1)
{
if(j==n-1)
System.out.print("1");
else
System.out.print("*");
}
else if(m==2)
{
if(i==0 || i==n-1 || i==n/2)
System.out.print("2");
else if(i<n/2 && j==n-1)
System.out.print("2");
else if(i>n/2 && j==0)
System.out.print("2");
else
System.out.print("*");
}
else if(m==3)
{
if(i==0 || i==n/2 || i==n-1)
System.out.print("3");
else if(j==n-1)
System.out.print("3");
else
System.out.print("*");
}
else if(m==4)
{
if(i<n/2 && (j==0 || j==n-1))
System.out.print("4");
else if(i==n/2)
System.out.print("4");
else if(j==n-1)
System.out.print("4");
else
System.out.print("*");
}
else if(m==5)
{
if(i==0 || i==n-1 || i==n/2)
System.out.print("5");
else if(i<n/2 && j==0)
System.out.print("5");
else if(i>n/2 && j==n-1)
System.out.print("5");
else
System.out.print("*");
}
else if(m==6)
{
if(i==0 || i==n/2 || i==n-1)
System.out.print("6");
else if(i<n/2 && j==0)
System.out.print("6");
else if(i>n/2 && (j==0 || j==n-1))
System.out.print("6");
else
System.out.print("*");
}
else if(m==7)
{
if(i==0)
System.out.print("7");
else if(j==n-1)
System.out.print("7");
else
System.out.print("*");
}
else if(m==8)
{
if(i==0 || i==n/2 || i==n-1)
System.out.print("8");
else if(j==0 || j==n-1)
System.out.print("8");
else
System.out.print("*");
}
else if(m==9)
{
if(i==0 || i==n/2 || i==n-1)
System.out.print("9");
else if(i<n/2 &&(j==0 || j==n-1))
System.out.print("9");
else if(j==n-1)
System.out.print("9");
else
System.out.print("*");
}
else if(m==0)
{
if(i==0 || i==n-1)
System.out.print("0");
else if(j==0 || j==n-1)
System.out.print("0");
else
System.out.print("*");
}
}
System.out.println();
}
}
}
input 1:
5 5
output 1:
55555
5****
55555
****5
55555
input 2:
3 10
output 2:
3333333333
*********3
*********3
*********3
*********3
3333333333
*********3
*********3
*********3
3333333333
Number and astriesk pattern printing
import java.util.*;
public class Main
{
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
for(int i=0,k=1;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(j==i||i+j==n-1)
{
System.out.print(k+" ");
k++;
}
else
{
System.out.print("* ");
}
}
System.out.println();
}
}
}
input 1:
5
output 1:
1 * * * 2
* 3 * 4 *
* * 5 * *
* 6 * 7 *
8 * * * 9
input 2:
6
output 2:
1 * * * * 2
* 3 * * 4 *
* * 5 6 * *
* * 7 8 * *
* 9 * * 10 *
11 * * * * 12
Addition and Multiplication alternate pattern printing
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int sum1=0;
long sum2=1;
int m=n;
for(int row=1;row<=n;row++)
{
sum1=0;
sum2=1;
for(int col=1;col<=m;col++)
{
if(row%2==1)
{
sum1+=col;
if(col!=m)
System.out.print(col+"+");
else
System.out.print(col+"="+sum1);
}
else if(row%2==0)
{
sum2*=(long)col;
if(col!=m)
System.out.print(col+"*");
else
System.out.print(col+"="+sum2);
}
}
m--;
System.out.println();
}
}
}
input:
5
output:
1+2+3+4+5=15
1*2*3*4=24
1+2+3=6
1*2=2
1=1
Integer -PLUS shaped pattern printing
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
int size=N+(N-1),m=N,d=0;
int end1=1,end2=1,n=N,k=2;
for(int row=1;row<=size;row++)
{
m=n;
d=n;
for(int index=1;index<=end1;index++)
System.out.print(m+" ");
for(int col=k;col<=size-end1;col++)
{
if(col==N)
System.out.print("1 ");
else if(col<N)
System.out.print(--m+" ");
else if(col>N)
System.out.print(m++ +" ");
}
if(row==N)
{
for(int index=1;index<=size-N;index++)
System.out.print(d+" ");
}
else
{
for(int index=1;index<=end2;index++)
System.out.print(d+" ");
}
if(row<N)
{
k++;
end2++;
end1++;
n--;
}
else if(row>=N)
{
--k;
end1--;
end2--;
n++;
}
System.out.println();
}
}
}
input 1:
5
output 1:
5 4 3 2 1 2 3 4 5
4 4 3 2 1 2 3 4 4
3 3 3 2 1 2 3 3 3
2 2 2 2 1 2 2 2 2
1 1 1 1 1 1 1 1 1
2 2 2 2 1 2 2 2 2
3 3 3 2 1 2 3 3 3
4 4 3 2 1 2 3 4 4
5 4 3 2 1 2 3 4 5
input 2:
3
output 2:
3 2 1 2 3
2 2 1 2 2
1 1 1 1 1
2 2 1 2 2
3 2 1 2 3
Grid in a Grid - Pattern printing
#include<stdio.h>
#include <stdlib.h>
int main()
{
int r,c,m,n;
scanf("%d %d %d %d",&r,&c,&m,&n);
int size=(c*n);
int count1=0,count2=0;
for(int row=1;row<=m;row++)
{
for(int i=1;i<=r;i++)
{
count1=0;
for(int col=1;col<=size;col++)
{
printf("*");
count1++;
if(count1==c)
{
if(col!=size)
{
printf("|");
count1=0;
}
}
}
printf("\n");
}
if(row!=m)
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=c;j++)
{
printf("-");
}
if(i!=n)
printf("+");
}
}
if(row!=m)
printf("\n");
}
}
input 1:
2 3
4 4
output 1:
***|***|***|***
***|***|***|***
---+---+---+---
***|***|***|***
***|***|***|***
---+---+---+---
***|***|***|***
***|***|***|***
---+---+---+---
***|***|***|***
***|***|***|***
input 2:
3 3
3 2
output 2:
***|***
***|***
***|***
---+---
***|***
***|***
***|***
---+---
***|***
***|***
***|***
String Triangle Pattern:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
int l=str.length();
for(int row=0;row<l-2;row++)
{
String str1="";
int size1=l-row-2,size2=row+1;
for(int col=0;col<l;col+=2)
{
int end1=size1,end2=size2;
while(end1>0)
{
str1+=str.charAt(col);
end1--;
}
while(end2>0)
{
if(col<l-1)
str1+=str.charAt(col+1);
else
str1+='*';
end2--;
}
int temp=size1;
size1=size2;
size2=temp;
}
System.out.println(str1);
}
}
}
input 1:
skill
output 1:
ssskillllll*
sskkiillll**
skkkiiill***
input 2:
manage
output 2:
mmmmanaaaagggge
mmmaannaaagggee
mmaaannnaaggeee
maaaannnnageeee
input 3:
fluorescent
output 3:
fffffffffluooooooooorrrrrrrrresccccccccceeeeeeeeent*********
fffffffflluuoooooooorrrrrrrreesscccccccceeeeeeeenntt********
fffffffllluuuooooooorrrrrrreeesssccccccceeeeeeennnttt*******
fffffflllluuuuoooooorrrrrreeeesssscccccceeeeeennnntttt******
fffffllllluuuuuooooorrrrreeeeesssssccccceeeeennnnnttttt*****
fffflllllluuuuuuoooorrrreeeeeesssssscccceeeennnnnntttttt****
fffllllllluuuuuuuooorrreeeeeeesssssssccceeennnnnnnttttttt***
fflllllllluuuuuuuuoorreeeeeeeesssssssscceennnnnnnntttttttt**
fllllllllluuuuuuuuuoreeeeeeeeessssssssscennnnnnnnnttttttttt*
Hour Glass Pattern using digits:
import java.util.*;
public class Main
{
static void pattern(int num)
{
for (int row = 1; row <= num; row++)
{
for (int col = 1; col < row; col++)
{
System.out.print(" ");
}
for (int col = row; col<= num; col++)
{
System.out.print(col+ " ");
}
System.out.println();
}
for (int row = num - 1; row >= 1; row--)
{
for (int col = 1; col < row; col++)
{
System.out.print(" ");
}
for (int col = row; col <= num; col++)
{
System.out.print(col + " ");
}
System.out.println();
}
}
public static void main (String[] args)
{
Scanner sc=new Scanner(System.in);
int rows = sc.nextInt();
pattern(rows);
}
}
input 1:
5
output 1:
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
input 2:
3
output 2:
1 2 3
2 3
3
2 3
1 2 3
Hour Glass Pattern using asterisk:
import java.util.*;
public class Main
{
static void pattern(int num)
{
for (int row = 1; row <= num; row++)
{
for (int col = 1; col < row; col++)
{
System.out.print(" ");
}
for (int col = row; col<= num; col++)
{
System.out.print("* ");
}
System.out.println();
}
for (int row = num - 1; row >= 1; row--)
{
for (int col = 1; col < row; col++)
{
System.out.print(" ");
}
for (int col = row; col <= num; col++)
{
System.out.print("* ");
}
System.out.println();
}
}
public static void main (String[] args)
{
Scanner sc=new Scanner(System.in);
int rows = sc.nextInt();
pattern(rows);
}
}
input 1:
5
output 1:
* * * * *
* * * *
* * *
* *
*
* *
* * *
* * * *
* * * * *
input 2:
3
output 2:
* * *
* *
*
* *
* * *
Hour Glass Pattern (4lakh +CTC):
import java.util.*;
public class Main
{
static void pattern(int num)
{
for (int row = 1; row <= num; row+=2)
{
for (int col = 1; col < row; col++)
{
System.out.print(" ");
}
for (int col = row; col<= num; col++)
{
System.out.print("* ");
}
System.out.println();
}
for (int row = num-1; row >= 1; row-=2)
{
for (int col = 1; col < row-1; col++)
{
System.out.print(" ");
}
for (int col = row-1; col <= num; col++)
{
System.out.print("* ");
}
System.out.println();
}
}
public static void main (String[] args)
{
Scanner sc=new Scanner(System.in);
int rows = sc.nextInt();
pattern(rows);
}
}
input 1:
5
output 1:
* * * * *
* * *
*
* * *
* * * * *
input 2:
7
output 2:
* * * * * * *
* * * * *
* * *
*
* * *
* * * * *
* * * * * * *
ASCII diagonal pattern:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
int l=str.length();
int size=0;
List<String> al=new ArrayList<>();
for(int i=0;i<l;i++)
{
String s=Integer.toString((int)(str.charAt(i)));
size=size+s.length();
al.add(s);
}
int k=al.get(0).length();
int m=size-k,p=0;
for(int i=1;i<l;i++)
{
for(int j=1;j<=size;j++)
{
if(j==m+1)
{
System.out.print(al.get(p));
j=(j+al.get(p).length())-1;
p++;
}
else
{
System.out.print("*");
}
}
m=m-(al.get(p).length());
System.out.println();
}
System.out.print(al.get(al.size()-1));
int s=size-al.get(al.size()-1).length();
for(int i=0;i<s;i++)
{
System.out.print("*");
}
}
}
input 1
mark
output 1:
********109
******97***
***114*****
107********
input 2:
CodeJamm
output 2:
*******************67
****************111**
*************100*****
**********101********
********74***********
******97*************
***109***************
109******************
Integer and Character pattern printing:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
char ch=sc.next().charAt(0);
int size1=n,size2=n-1,space=1;
for(int row=1;row<=n;row++)
{
if(row>1)
{
for(int index=1;index<=space;index++)
{
System.out.print(" ");
}
space++;
}
if(row%2==1)
{
for(int col=1;col<=size1;col++)
{
if(col==size1)
System.out.print(col);
else
System.out.print(col+" "+ch+" ");
}
size1-=2;
}
else if(row%2==0)
{
for(int col=size2;col>=1;col--)
{
if(col==1)
System.out.print(col);
else
System.out.print(col+" "+ch+" ");
}
size2-=2;
}
System.out.println();
}
}
}
input 1:
8 #
output 1:
1 # 2 # 3 # 4 # 5 # 6 # 7 # 8
7 # 6 # 5 # 4 # 3 # 2 # 1
1 # 2 # 3 # 4 # 5 # 6
5 # 4 # 3 # 2 # 1
1 # 2 # 3 # 4
3 # 2 # 1
1 # 2
1
input 2:
5 +
output 2:
1 + 2 + 3 + 4 + 5
4 + 3 + 2 + 1
1 + 2 + 3
2 + 1
1
Integer Multiples of 10 to its size-pattern printing:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
int l=str.length();
int size=l-1;
for(int row=1;row<=l;row++)
{
for(int index=0;index<l;index++)
{
long num=Character.getNumericValue(str.charAt(index))*((long)Math.pow(10,size));
System.out.print(num+" ");
}
size--;
System.out.println();
}
}
}
input 1:
10578
output 1:
10000 0 50000 70000 80000
1000 0 5000 7000 8000
100 0 500 700 800
10 0 50 70 80
1 0 5 7 8
input 2:
543
output 2:
500 400 300
50 40 30
5 4 3
Integer - reverse pattern printing:
import java.util.*;
public class Main
{
static int findStartNum(int n)
{
int num=0;
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
num++;
}
}
return num;
}
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int num=findStartNum(n);
int m=0,p=n;
for(int row=0;row<n;row++)
{
m=num;
p=n;
for(int col=row;col<n;col++)
{
System.out.print(m+" ");
m=m-(p--);
}
num--;
System.out.println();
}
}
}
input 1:
5
output 1:
15 10 6 3 1
14 9 5 2
13 8 4
12 7
11
input 2:
3
output 2:
6 3 1
5 2
4
Two triangle - asterisk pattern printing:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int size1=2,size2=n-1;
for(int row=1;row<=n;row++)
{
for(int col=1;col<=n;col++)
{
if(col>=size1&&col<=size2)
System.out.print(" ");
else
System.out.print("*");
}
if(row<(n/2)+1)
{
size1++;
size2--;
}
else if(row>=(n/2)+1)
{
size1--;
size2++;
}
System.out.println();
}
}
}
input 1:
5
output 1:
* *
** **
*****
** **
* *
input 2:
7
output 2:
7
* *
** **
*** ***
*******
*** ***
** **
* *
Two triangle - Integer character pattern printing:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int num=1;
char c='a';
int start=2,end=n;
for(int row=1;row<=n;row++)
{
for(int col=1;col<=n+1;col++)
{
if(col>=start&&col<=end)
System.out.print("* ");
else if(col<start)
System.out.print(num++ + " ");
else if(col>end)
{
System.out.print(c+" ");
if(c=='z')
c='a';
else
c++;
}
}
if(row<=(n/2))
{
start++;
end--;
}
else if(row>n/2)
{
start--;
end++;
}
System.out.println();
}
}
}
input 1:
5
output 1:
1 * * * * a
2 3 * * b c
4 5 6 d e f
7 8 * * g h
9 * * * * i
input 2:
11
output 2:
1 * * * * * * * * * * a
2 3 * * * * * * * * b c
4 5 6 * * * * * * d e f
7 8 9 10 * * * * g h i j
11 12 13 14 15 * * k l m n o
16 17 18 19 20 21 p q r s t u
22 23 24 25 26 * * v w x y z
27 28 29 30 * * * * a b c d
31 32 33 * * * * * * e f g
34 35 * * * * * * * * h i
36 * * * * * * * * * * j
Integer - row sum digit pattern:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
int K=sc.nextInt();
int val=N,len=0,sum=0,sum1=0;
for(int row=1;row<=K;row++)
{
sum1=val;
String str=Integer.toString(sum1),output="";
len=0;sum=0;
OUTER:while(len<N)
{
for(int index=0;index<str.length();index++)
{
output+=str.charAt(index);
len++;
sum+=Character.getNumericValue(str.charAt(index));
if(len==N)
break OUTER;
}
}
val=sum;
System.out.println(output);
}
}
}
input 1:
5 6
output 1:
55555
25252
16161
15151
13131
99999
explanation:
the number of rows is K.
first row contains n digits 55555 and its sum id (5+5+5+5+5)=25.
next row will be the digits of previous row sum--> 25252 --> sum=(2+5+2+5+2)=16
next row will be the digits of previous row sum--> 16161 --> sum=(1+6+1+6+1)=15
next row will be the digits of previous row sum--> 15151 --> sum=(1+5+1+5+1)=13
next row will be the digits of previous row sum--> 13131 --> sum=(1+3+1+3+1)=9
next row will be the digits of previous row sum--> 99999 . since it reached the Kth row, the program terminates.
input 2:
12 6
output 2:
121212121212
181818181818
545454545454
545454545454
545454545454
545454545454
Integer Matrix Pattern Printing:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
int l=str.length();
int size=Character.getNumericValue(str.charAt(0));
for(int row=1;row<=size;row++)
{
for(int col=0;col<l;col++)
{
for(int k=0;k<size;k++)
{
System.out.print(str.charAt(col));
}
}
System.out.println();
}
}
}
input 1:
2586
output 1:
22558866
22558866
input 2:
37895
output 2:
333777888999555
333777888999555
333777888999555
input 3:
9688323
output 3:
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
999999999666666666888888888888888888333333333222222222333333333
Diamond Inner layer rhombus pattern printing:
import java.util.*;
public class Main
{
static void upperRhombus(char[][] mat,int size,int n)
{
int start=n-1,end=n;
for(int row=0;row<n;row++)
{
for(int col=0;col<size;col++)
{
if(col==start)
mat[row][col]='/';
else if(col==end)
mat[row][col]='\\';
else
mat[row][col]='#';
if(row%2==0&&row>0&&col>start&&col<end)
mat[row][col]=mat[row-2][col];
if(row%2==1&&row>1&&col>start&&col<end)
mat[row][col]=mat[row-2][col];
}
start--;
end++;
}
}
static void LowerRhombus(char[][] mat,int size,int n)
{
int start=n-1,end=n;
for(int row=size-1;row>=n;row--)
{
for(int col=0;col<size;col++)
{
if(col==start)
mat[row][col]='\\';
else if(col==end)
mat[row][col]='/';
else
mat[row][col]='#';
if(row%2==0&&row>n-1&&row<size-2&&col>start&&col<end)
mat[row][col]=mat[row+2][col];
if(row%2==1&&row>n-1&&row<size-2&&col>start&&col<end)
mat[row][col]=mat[row+2][col];
}
start--;
end++;
}
}
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int size=n*2;
char[][] mat=new char[size][size];
upperRhombus(mat,size,n);
LowerRhombus(mat,size,n);
for(int row=0;row<size;row++)
{
for(int col=0;col<size;col++)
{
System.out.print(mat[row][col]);
}
System.out.println();
}
}
}
input 1:
5
output 1:
####/\####
###/##\###
##/#/\#\##
#/#/##\#\#
/#/#/\#\#\
\#\#\/#/#/
#\#\##/#/#
##\#\/#/##
###\##/###
####\/####
input 2:
11
output 2:
##########/\##########
#########/##\#########
########/#/\#\########
#######/#/##\#\#######
######/#/#/\#\#\######
#####/#/#/##\#\#\#####
####/#/#/#/\#\#\#\####
###/#/#/#/##\#\#\#\###
##/#/#/#/#/\#\#\#\#\##
#/#/#/#/#/##\#\#\#\#\#
/#/#/#/#/#/\#\#\#\#\#\
\#\#\#\#\#\/#/#/#/#/#/
#\#\#\#\#\##/#/#/#/#/#
##\#\#\#\#\/#/#/#/#/##
###\#\#\#\##/#/#/#/###
####\#\#\#\/#/#/#/####
#####\#\#\##/#/#/#####
######\#\#\/#/#/######
#######\#\##/#/#######
########\#\/#/########
#########\##/#########
##########\/##########
Power of 2-increasing pattern:
import java.util.*;
public class Main
{
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt(),size=1,num=1,col=0;
OUTER:for(int row=1;row<=n/2;row++)
{
for(col=1;col<=size;col++)
{
System.out.print(num + " ");
if(num==n)
break OUTER;
else
num++;
}
if(num<n)
size=size*2;
System.out.println();
}
if(col<size)
{
for(int index=1;index<=size-col;index++)
System.out.print("* ");
}
}
}
input 1:
7
output 1:
1
2 3
4 5 6 7
input 2:
31
output 2:
1
2 3
4 5 6 7
8 9 10 11 12 13 14 15
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
input 3:
20
output 3:
1
2 3
4 5 6 7
8 9 10 11 12 13 14 15
16 17 18 19 20 * * * * * * * * * * *
STAR PATTERN :
STAR PATTERN :
import java.util.*;
public class Main
{
public static void pyramidPattern(int n)
{
for (int i=0; i<n; i++)
{
for (int j=n-i; j>1; j--)
{
System.out.print(" ");
}
for (int j=0; j<=i; j++ )
{
System.out.print("* ");
}
System.out.println();
}
}
public static void main(String args[])
{
int n = 5;
pyramidPattern(n);
}
}
Sample Output:
*
* *
* * *
* * * *
* * * * *
import java.util.*;
public class Main
{
public static void rightTriangle(int n)
{
int i, j;
for(i=0; i<n; i++)
{
for(j=2*(n-i); j>=0; j--)
{
System.out.print(" ");
}
for(j=0; j<=i; j++)
{
System.out.print("* ");
}
System.out.println();
}
}
public static void main(String args[])
{
int n = 5;
rightTriangle(n);
}
}
Sample Output:
*
* *
* * *
* * * *
* * * * *
import java.util.*;
public class Main
{
public static void printStars(int n)
{
int i, j;
for(i=0; i<n; i++)
{
for(j=2*(n-i); j>=0; j--)
{
System.out.print(" ");
}
for(j=0; j<=i; j++)
{
System.out.print("* ");
}
System.out.println();
}
}
public static void main(String args[])
{
int n = 5;
printStars(n);
}
}
Sample Output:
*
* *
* * *
* * * *
* * * * *
import java.util.*;
public class Main
{
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("");
}
}
}
sample Input:
Enter the number of rows: 5
Sample Output:
*
***
*****
*******
*********
*******
*****
***
*
import java.util.Scanner;
public class Main
{
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-1; i>=0 ; i--)
{
for (int j=0; j<=i; j++)
{
System.out.print("*" + " ");
}
System.out.println();
}
}
}
sample Input:
Enter the number of rows: 5
sample Output:
* * * * *
* * * *
* * *
* *
*
import java.util.Scanner;
public class Main
{
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("");
}
}
}
sample Input:
Enter the number of rows: 5
sample output:
*
**
***
****
*****
******
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample Input:
Enter the number of rows: 5
sample output:
* * * * *
* * * *
* * *
* *
*
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*****
****
***
**
*
Right Pascal's triangle:
import java.util.*;
public class Main
{
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
Left Pascal's Triangle:
import java.util.*;
public class Main
{
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*
**
***
****
*****
****
***
**
*
Sandglass-star Pattern:
import java.util.*;
public class Main
{
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
* * * * *
* * * *
* * *
* *
*
*
* *
* * *
* * * *
* * * * *
Alphabet 'A' Pattern:
import java.util.*;
public class Print
{
void display(int n)
{
for (int i = 0; i<=n; i++)
{
for (int j = 0; j<= n / 2; j++)
{
if ((j == 0 || j == n/2)&& i != 0 ||i == 0 && j != n/2||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);
Print a = new Print();
a.display(7);
}
}
sample output:
**
* *
****
* *
* *
* *
import java.util.*;
public class Main
{
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*
* *
* *
* *
*********
import java.util.*;
public class Main
{
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("");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*********
* *
* *
* *
*
import java.util.*;
public class Main
{
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("*");
}
}
}
sample input:
Enter the number of rows: 5
sample output:
*
* *
* *
* *
* *
* *
* *
* *
*
NUMBER PATTERN :
NUMBER PATTERN :
import java.util.*;
public class Main
{
public static void printNums(int n)
{
int i, j,num;
for(i=0; i<n; i++)
{
num=1;
for(j=0; j<=i; j++)
{
System.out.print(num+ " ");
num++;
}
System.out.println();
}
}
public static void main(String args[])
{
int n = 5;
printNums(n);
}
}
sample output:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
import java.util.*;
public class Main
{
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();
}
}
}
sample output:
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample output:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample output:
1
212
32123
4321234
32123
212
1
import java.util.Scanner;
public class Main
{
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++)
{
System.out.print(i+" ");
}
System.out.println();
}
}
}
sample input:
Enter the number of rows: 5
sample output:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
import java.util.Scanner;
public class Main
{
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 = rows; j >= i; j--)
{
System.out.print(j+" ");
}
System.out.println();
}
}
}
sample input:
Enter the number of rows: 5
sample output:
5
5 4
5 4 3
5 4 3 2
5 4 3 2 1
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample input:
Enter the number of rows: 5
sample output:
1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample input:
Enter the number of rows: 5
sample output:
10101
01010
10101
01010
10101
import java.util.*;
public class Main
{
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();
}
}
}
sample input:
Enter the number of rows: 5
sample output:
1
10
101
1010
10101
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample output:
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
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for (int i = 1; i <= rows; i++)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
for (int i = rows-1; i >= 1; i--)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
}
}
sample output:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for (int i = 1; i <= rows; i++)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
for (int j = i-1; j >= 1; j--)
{
System.out.print(j+" ");
}
System.out.println();
}
}
}
sample output:
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1
1 2 3 4 5 6 5 4 3 2 1
1 2 3 4 5 6 7 6 5 4 3 2 1
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for (int i = rows; i >= 1; i--)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
for (int i = 2; i <= rows; i++)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
}
}
sample output:
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for (int i = 1; i <= rows; i++)
{
for (int j = 1; j < i; j++)
{
System.out.print(" ");
}
for (int j = i; j <= rows; j++)
{
System.out.print(j);
}
System.out.println();
}
for (int i = rows-1; i >= 1; i--)
{
for (int j = 1; j < i; j++)
{
System.out.print(" ");
}
for (int j = i; j <= rows; j++)
{
System.out.print(j);
}
System.out.println();
}
}
}
sample output:
1234567
234567
34567
4567
567
67
7
67
567
4567
34567
234567
1234567
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for(int i=1;i< rows+1 ;i++)
{
for(int j=i; j < rows+1 ;j++)
{
System.out.print(j + " ");
}
for(int k=1; k < i ;k++)
{
System.out.print(k + " ");
}
System.out.println();
}
}
}
sample output:
1 2 3 4 5 6 7
2 3 4 5 6 7 1
3 4 5 6 7 1 2
4 5 6 7 1 2 3
5 6 7 1 2 3 4
6 7 1 2 3 4 5
7 1 2 3 4 5 6
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("How many rows you want in this pattern?");
int rows = sc.nextInt();
System.out.println("Here is your pattern....!!!");
for (int i = 1; i <= rows; i++)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
for (int i = rows-1; i >= 1; i--)
{
for (int j = 1; j <= i; j++)
{
System.out.print(j+" ");
}
System.out.println();
}
}
sample output:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
ALPHABET PATTERN:
ALPHABET PATTERN:
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample output:
A
A B
A B C
A B C D
A B C D E
A B C D E F
import java.util.Scanner;
public class Main
{
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();
}
}
}
sample output:
A
B B
C C C
D D D D
E E E E E
F F F F F F
import java.util.Scanner;
public class Main
{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();
}
}
}
sample output:
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
import java.util.*;
public class Main
{
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();
}
}
}
sample output:
A
A B
A B C
A B C D
A B C D E
A B C D E F
import java.util.Scanner;
public class Main
{
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];
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);
for (int i = 0; i < letter.length; i++)
{
if (letter[i] == user_letter)
{
letter_number = i;
break;
}
}
for (int i = 0; i <= letter_number; i++)
{
diamond[i] = "";
for (int j = 0; j < letter_number - i; j++)
{
diamond[i] += " ";
}
diamond[i] += letter[i];
if (letter[i] != 'A') {
for (int j = 0; j < 2 * i - 1; j++)
{
diamond[i] += " ";
}
diamond[i] += letter[i];
}
System.out.println(diamond[i]);
}
for (int i = letter_number - 1; i >= 0; i--)
{
System.out.println(diamond[i]);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
sample input:
Enter a Character between A to Z : F
sample output:
A
B B
C C
D D
E E
F F
E E
D D
C C
B B
A