Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. public class Matrix {
  2. private
  3. int n;
  4. private
  5. int[][] values;
  6.  
  7. Matrix(int _n) {
  8. n = _n;
  9. values = new int[n][n];
  10. }
  11.  
  12. public void generateMatrix() {
  13. for (int i = 0; i < n; i++) {
  14. for (int j = 0; j < n; j++)
  15. values[i][j] = n * ((i + j + 1 + n / 2) % n) + (i + 2 * j + 1) % n + 1;
  16.  
  17. }
  18. }
  19.  
  20. public void printMatrix() {
  21. for (int i = 0; i < n; i++) {
  22. System.out.println();
  23. for (int j = 0; j < n; j++)
  24. System.out.print(values[i][j] + " ");
  25. }
  26. }
  27.  
  28. public int sumRow(int nr) {
  29. int sum;
  30. sum = 0;
  31. for (int j = 0; j < n; j++) {
  32. sum += values[nr][j];
  33. }
  34. return sum;
  35. }
  36.  
  37. public int sumCol(int nr) {
  38. int sum;
  39. sum = 0;
  40. for (int j = 0; j < n; j++) {
  41. sum += values[j][nr];
  42. }
  43. return sum;
  44. }
  45.  
  46. public int sumDiagPp() {
  47. int sum;
  48. sum = 0;
  49. for (int i = 0; i < n; i++) {
  50. sum += values[i][i];
  51. }
  52. return sum;
  53. }
  54.  
  55. public int sumDiagSec() {
  56. int sum;
  57. sum = 0;
  58. for (int i = 0; i < n; i++) {
  59. sum += values[i][n - i-1 ];
  60. }
  61. return sum;
  62. }
  63.  
  64. public boolean checkProprieties() {
  65. int diagonala_principala = sumDiagPp();
  66. int diagonala_secundara = sumDiagSec();
  67. if (diagonala_secundara != diagonala_principala)
  68. return false;
  69. for (int i = 0; i < n; i++) {
  70. if (sumRow(i) != sumCol(i) || diagonala_principala!=sumCol(i))
  71. return false;
  72. }
  73. return true;
  74.  
  75.  
  76. }
  77.  
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement