Given an input and we have to print spiral pattern using java program.
Example:
Input: 5 Output: Spiral pattern is: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9
import java.util.Scanner; public class Pattern22 { public static void main(String args[]) { // create object. Scanner sc = new Scanner(System.in); // enter the number of elements. System.out.print("Enter the number of elements for pattern : "); int n = sc.nextInt(); int A[][] = new int[n][n]; int k=1, c1=0, c2=n-1, r1=0, r2=n-1; while(k<=n*n) { for(int i=c1;i<=c2;i++) { A[r1][i]=k++; } for(int j=r1+1;j<=r2;j++) { A[j][c2]=k++; } for(int i=c2-1;i>=c1;i--) { A[r2][i]=k++; } for(int j=r2-1;j>=r1+1;j--) { A[j][c1]=k++; } c1++; c2--; r1++; r2--; } /* Printing the Spiral pattern */ System.out.println("The Spiral pattern is : "); for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { System.out.print(A[i][j]+ "\t"); } System.out.println(); } } }
Output
First run: Enter the number of elements for pattern : 5 The Spiral pattern is : 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 Second run: Enter the number of elements for pattern : 10 The Spiral pattern is : 1 2 3 4 5 6 7 8 9 10 36 37 38 39 40 41 42 43 44 11 35 64 65 66 67 68 69 70 45 12 34 63 84 85 86 87 88 71 46 13 33 62 83 96 97 98 89 72 47 14 32 61 82 95 100 99 90 73 48 15 31 60 81 94 93 92 91 74 49 16 30 59 80 79 78 77 76 75 50 17 29 58 57 56 55 54 53 52 51 18 28 27 26 25 24 23 22 21 20 19
total answers (1)
start bookmarking useful questions and collections and save it into your own study-lists, login now to start creating your own collections.
Program to print spiral pattern in java
Output
First run: Enter the number of elements for pattern : 5 The Spiral pattern is : 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 Second run: Enter the number of elements for pattern : 10 The Spiral pattern is : 1 2 3 4 5 6 7 8 9 10 36 37 38 39 40 41 42 43 44 11 35 64 65 66 67 68 69 70 45 12 34 63 84 85 86 87 88 71 46 13 33 62 83 96 97 98 89 72 47 14 32 61 82 95 100 99 90 73 48 15 31 60 81 94 93 92 91 74 49 16 30 59 80 79 78 77 76 75 50 17 29 58 57 56 55 54 53 52 51 18 28 27 26 25 24 23 22 21 20 19
need an explanation for this answer? contact us directly to get an explanation for this answer