top of page
Search

# Write a program to print the below spiral pattern on the console

### 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