Algorithm:
STEP 1: START
STEP 2: SET i=1,j=1,k=1,l=1,direction=1
STEP 3: SET matrix[10][10]
STEP 4: REPEAT STEP 5 to 9 UNTIL i is less than 10
STEP 5: SET j=0
STEP 6: REPEAT STEP 7 and 8 UNTIL j is less than 10
STEP 7: SET matrix[i][j]=0
STEP 8: SET j=j+1
STEP 9: SET i=i+1 // steps for printing the matrix
STEP 10: SET i=0
STEP 11: REPEAT STEP 12 to 16 UNTIL i is less than 10
STEP 12: SET j=0
STEP 13: REPEAT STEP 14 and 15 UNTIL j is less than 10
STEP 14: PRINT matrix[i][j]
STEP 15: SET j=j+1
STEP 16: SET i=i+1 //steps for snake
STEP 17: SET i=1
STEP 18: SET j=0
STEP 19: SET k=0
STEP 20: REPEAT STEP 21 to 26 UNTIL i is less than 100
STEP 21: SET matrix[j][k]=i
STEP 22: IF direction=1 IF k+1<10 IF matrix[j][k+1]==0 SET k=k+1 ELSE SET j=j+1 and SET direction =2 ELSE SET j= j+1 and SET direction =2
STEP 23: IF direction=2 IF j+1<10 IF matrix[j+1][k]==0 SET j=j+1 ELSE SET k=k-1 and SET direction =3 ELSE SET k= -1 and SET direction =3
STEP 24: IF direction=3 IF k-1>=0 IF matrix[j][k-1]==0 SET k=k-1 ELSE SET j=j-1 and SET direction =4 ELSE SET j= j-1 and SET direction =4
STEP 25: IF direction=4 IF j-1>=0 IF matrix[j-1][k]==0 SET j=j-1 ELSE SET k=k+1 and SET direction =1 ELSE SET k= k+1 and SET direction =1
STEP 26: SET i=i+1 // Steps for printing the matrix
STEP 27: SET i=0
STEP 28: REPEAT STEP 29 to 33 UNTIL i is less than 10
STEP 29: SET j=0
STEP 30: REPEAT STEP 31 and 32 UNTIL j is less than 10
STEP 31: PRINT matrix[i][j]
STEP 32: SET j=j+1
STEP 33: SET i=i+1
STEP 34: END
Program:
public class pattern
{
public static void main(String[] args) {
int lines=4;
int i,j,k,l;
int space=0;
for(i=0;i<lines;i++){// this loop is used to print lines
for(j=1;j<=space;j++){// this loop is used to print space in a line
System.out.print(" ");
}
for(j=1;j<=lines;j++){// this loop is used to print numbers in a line
if(j<=(lines-i))
System.out.print(j);
else
System.out.print("*");
}
j--;
while(j>0){// this loop is used to print numbers in a line
if(j>lines-i)
System.out.print("*");
else
System.out.print(j);
j--;
}
if((lines-i)>9)// this loop is used to increment space
space=space+1;
System.out.println("");
}
}
Output:
Source: Javapoint
The Tech Platform
Comments