Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Matrix {
- private
- int n;
- private
- int[][] values;
- Matrix(int _n) {
- n = _n;
- values = new int[n][n];
- }
- public void generateMatrix() {
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++)
- values[i][j] = n * ((i + j + 1 + n / 2) % n) + (i + 2 * j + 1) % n + 1;
- }
- }
- public void printMatrix() {
- for (int i = 0; i < n; i++) {
- System.out.println();
- for (int j = 0; j < n; j++)
- System.out.print(values[i][j] + " ");
- }
- }
- public int sumRow(int nr) {
- int sum;
- sum = 0;
- for (int j = 0; j < n; j++) {
- sum += values[nr][j];
- }
- return sum;
- }
- public int sumCol(int nr) {
- int sum;
- sum = 0;
- for (int j = 0; j < n; j++) {
- sum += values[j][nr];
- }
- return sum;
- }
- public int sumDiagPp() {
- int sum;
- sum = 0;
- for (int i = 0; i < n; i++) {
- sum += values[i][i];
- }
- return sum;
- }
- public int sumDiagSec() {
- int sum;
- sum = 0;
- for (int i = 0; i < n; i++) {
- sum += values[i][n - i-1 ];
- }
- return sum;
- }
- public boolean checkProprieties() {
- int diagonala_principala = sumDiagPp();
- int diagonala_secundara = sumDiagSec();
- if (diagonala_secundara != diagonala_principala)
- return false;
- for (int i = 0; i < n; i++) {
- if (sumRow(i) != sumCol(i) || diagonala_principala!=sumCol(i))
- return false;
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement