Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Main{
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String input = scanner.nextLine();
- int n = Integer.parseInt(input);
- int[][] matrix = new int[n][n];
- int i = 1;
- int topBorder = 0;
- int rightBorder = n - 1;
- int bottomBorder = n - 1;
- int leftBorder = 0;
- while (i <= n * n) {
- for (int j = leftBorder; j <= rightBorder; j++) {
- matrix[topBorder][j] = i;
- i++;
- }
- topBorder++;
- for (int j = topBorder; j <= bottomBorder; j++) {
- matrix[j][rightBorder] = i;
- i++;
- }
- rightBorder--;
- for (int j = rightBorder; j >= leftBorder; j--) {
- matrix[bottomBorder][j] = i;
- i++;
- }
- bottomBorder--;
- for (int j = bottomBorder; j >= topBorder; j--) {
- matrix[j][leftBorder] = i;
- i++;
- }
- leftBorder++;
- }
- for (int[] row : matrix) {
- for (int cell : row) {
- System.out.printf("%d ", cell);
- }
- System.out.println();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement