Sunjaree

Magic Square

Mar 3rd, 2020
289
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.44 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. public class Assignment2 {
  4.    static ArrayList<Integer> arr= new ArrayList<>(5);
  5.  
  6.     public static void row_sum(int array[][],int row,int column){
  7.         int i,j,sum_row;
  8.  
  9.         for(i=0;i<row;i++){
  10.             sum_row = 0;
  11.             for(j=0;j<column;j++){
  12.                 sum_row = sum_row +array[i][j];
  13.             }
  14.             arr.add(sum_row);
  15.         }
  16.     }
  17.  
  18.     public static void column_sum(int array[][],int row,int column){
  19.         int i,j,sum_column;
  20.  
  21.         for(j=0;j<column;j++){
  22.             sum_column = 0;
  23.             for(i=0;i<row;i++){
  24.                 sum_column = sum_column +array[i][j];
  25.             }
  26.             arr.add(sum_column);
  27.         }
  28.     }
  29.  
  30.     public static void diagonal_sum(int array[][],int row,int column){
  31.         int i,j,sum_maindiag,sum_second_diag;
  32.  
  33.         sum_maindiag = 0;
  34.         for (i = 0; i < row; i++) {
  35.             for (j = 0; j < column; j++) {
  36.                 if(i==j){
  37.                     sum_maindiag = sum_maindiag+array[i][j];
  38.                 }
  39.             }
  40.         }
  41.         arr.add(sum_maindiag);
  42.  
  43.         sum_second_diag = 0 ;
  44.         j = column-1;
  45.         for (i = 0;i < row; i++) {
  46.             sum_second_diag += array[i][j];
  47.             j--;
  48.         }
  49.         arr.add(sum_second_diag);
  50.     }
  51.  
  52.     public static void main(String[] args){
  53.     Scanner sc = new Scanner(System.in);
  54.  
  55.     int row,column,i,j,magic_number;
  56.  
  57.     System.out.print("Please enter the desire grid dimension: ");
  58.  
  59.     row = sc.nextInt();
  60.     column = sc.nextInt();
  61.  
  62.     int array[][] = new int[row][column];
  63.  
  64.     magic_number = (int) ((row*(Math.pow(row,2) + 1))/2);
  65.     System.out.println("Please enter the desired input:");
  66.  
  67.     for(i=0;i<row;i++){
  68.         for(j=0;j<column;j++){
  69.              array[i][j] = sc.nextInt();
  70.         }
  71.     }
  72.  
  73.     System.out.println();
  74.     row_sum(array,row,column);
  75.     column_sum(array,row,column);
  76.     diagonal_sum(array,row,column);
  77.  
  78. boolean flag = true;
  79. for(i=1;i<arr.size();i++){
  80.     if(arr.get(0).equals(arr.get(i))){
  81.             flag = true;
  82.     }
  83.     else{
  84.         flag = false;
  85.         break;
  86.     }
  87. }
  88.  
  89. if(flag){
  90.     System.out.println("This is a LO Shu Magic Square.");
  91.     System.out.println("And,the magic number is " + magic_number + ".");
  92.     System.out.println("Thank you!!!");
  93. }
  94. else{
  95.     System.out.println("This is not a LO Shu Magic Square.");
  96.     System.out.println("Thank you!!!");
  97. }
  98.     }
  99. }
Advertisement
Add Comment
Please, Sign In to add comment