Advertisement
IrinaIgnatova

Fill the matrix - print matrix method

Oct 24th, 2019
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.07 KB | None | 0 0
  1. package com.company;
  2.  
  3.  
  4. import java.io.IOException;
  5.  
  6.  
  7. import java.time.LocalTime;
  8. import java.time.format.DateTimeFormatter;
  9. import java.util.*;
  10. import java.util.stream.Collectors;
  11.  
  12. public class Main {
  13.  
  14.  
  15.     public static void main(String[] args) {
  16.         Scanner scanner = new Scanner(System.in);
  17.  
  18.  
  19.         String[]input = scanner.nextLine().split(", ");
  20.         int size = Integer.parseInt(input[0]);
  21.         String pattern = input[1];
  22.  
  23.         int[][]matrix;
  24.         if(pattern.equals("A")){
  25.         matrix= fillPatternA(size);
  26.         }else{
  27.         matrix= fillPatternB(size);
  28.         }
  29.         PrintMatrix(matrix);
  30.     }
  31.  
  32.     private static void PrintMatrix(int[][] matrix) {
  33.         for (int r = 0; r < matrix.length; r++) {
  34.             for (int c = 0; c < matrix[r].length; c++) {
  35.                 System.out.print(matrix[r][c]+" ");
  36.             }
  37.             System.out.println();
  38.         }
  39.     }
  40.  
  41.     private static int[][] fillPatternA(int size) {
  42.         int[][] matrix = new int[size][size];
  43.         int value = 1;//започваме от 1 по условие
  44.         for (int col = 0; col < size; col++) {
  45.             for (int row = 0; row < size; row++) {//тук ходим по редовете и увеличаваме с 1
  46.                 matrix[row][col] = value++;
  47.             }
  48.         }
  49.         return matrix;
  50.     }
  51.  
  52.  
  53.     private static int[][] fillPatternB(int size) {
  54.         int[][] matrix = new int[size][size];
  55.         int value = 1;//започваме от 1 по условие
  56.         for (int col = 0; col < size; col++) {
  57.             if (col % 2 == 0) {//ако е четен индекса на колоната
  58.                 for (int row = 0; row < size; row++) {//тук ходим по редовете и увеличаваме с 1
  59.                     matrix[row][col] = value++;
  60.                 }
  61.             } else {
  62.                 for (int row = size - 1; row >= 0; row--) {
  63.                     matrix[row][col] = value++;
  64.                 }
  65.             }
  66.  
  67.         }
  68.         return matrix;
  69.     }
  70.  
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement