# Java Program to find Sum of Diagonal Elements of a Matrix

In the previous article, we have discussed Java Program to Find Sum of Matrix Elements

In this article we are going to see how we can write a program to calculate the sum of diagonal elements of a matrix in JAVA language.

## Java Program to find Sum of Diagonal Elements of a Matrix

A 3*3 Matrix is having 3 rows and 3 columns where this 3*3 represents the dimension of the matrix. Means there are 3*3 i.e. total 9 elements in a 3*3 Matrix.

Let’s understand it in more simpler way.

                   | A00   A01   A02 |
Matrix A =  | A10   A11   A12 |
| A20   A21   A22 | 3*3
• Matrix A represents a 3*3 matrix.
• A‘ represents the matrix element
• Aij‘ represents the matrix element at it’s matrix position/index.
• i‘ represents the row index
• j‘ represents the column index
• Means A00=Aij  where i=0 and j=0A01=aij where i=0 and j=1 and like this.
• Here we have started row value from 0 and column value from 0.

Let’s see different ways to find sum of diagonal elements of a 3*3 matrix.

### Method-1: Java Program to find Sum of Diagonal Elements of a Matrix By Static Initialization of Array Elements

Approach:

• Initialize an array of size 3×3 with values.
• Show the array to the user.
• Similarly use two for loops to iterate the rows and columns, then calculate the main diagonal sum.
• Repeat the above step to calculate the counter diagonal sum.
• Print the output.

Program:

import java.util.Scanner;

public class matrix
{
public static void main(String args[])
{
//Scanner class to take input
Scanner scan = new Scanner(System.in);

// Initializing the 3X3 matrix i.e. 2D array
int arr[][] = {{1,2,3},{4,5,6},{7,8,9}}, mainSum = 0, counterSum = 0;
int row, col;

System.out.print("Matrix : ");
// Loop to print the elements
for(row=0;row<3;row++)
{
// Used for formatting
System.out.print("\n");
for(col=0;col<3;col++)
{
System.out.print(arr[row][col]+" ");
}
}
System.out.print("\n");
// Loop to take the sum of main diagonal elements
for(row=0;row<3;row++)
for(col=0;col<3;col++)
{
if(row==col)
mainSum+=arr[row][col];
// if(row+col==2)
}
System.out.println("The sum of main diagonal elements is : "+mainSum);

// Loop to take the sum of counter diagonal elements
for(row=0;row<3;row++)
for(col=0;col<3;col++)
{
if(row+col==2)
counterSum+=arr[row][col];
}
System.out.println("The sum of counter diagonal elements is : "+counterSum);
}
}


Output:

Matrix is :
1 2 3
4 5 6
7 8 9
The sum of main diagonal elements is : 15
The sum of counter diagonal elements is : 15

### Method-2: Java Program to find Sum of Diagonal Elements of a Matrix By Dynamic Initialization of Array Elements

Approach:

• Initialize an array of size 3×3.
• Ask the user for input.
• Use two for loops to iterate the rows and columns to input the array elements.
• Show the array to the user.
• Similarly use two for loops to iterate the rows and columns, then calculate the main diagonal sum.
• Repeat the above step to calculate the counter diagonal sum.
• Print the result.

Program:

import java.util.Scanner;

public class matrix
{
public static void main(String args[])
{
//Scanner class to take input
Scanner scan = new Scanner(System.in);

// Initializing the 3X3 matrix i.e. 2D array
int arr[][] = new int[3][3];

System.out.println("Enter the 3x3 matrix elements :");
int row, col, mainSum = 0, counterSum = 0;
// Loop to take user input
for(row=0;row<3;row++)
for(col=0;col<3;col++)
arr[row][col] = scan.nextInt();

System.out.print("Matrix is : ");
// Loop to print the elements
for(row=0;row<3;row++)
{
// Used for formatting
System.out.print("\n");
for(col=0;col<3;col++)
{
System.out.print(arr[row][col]+" ");
}
}
System.out.print("\n");
// Loop to take the sum of main diagonal elements
for(row=0;row<3;row++)
for(col=0;col<3;col++)
{
if(row==col)
mainSum+=arr[row][col];
// if(row+col==2)
}
System.out.println("The sum of main diagonal elements is : "+mainSum);

// Loop to take the sum of counter diagonal elements
for(row=0;row<3;row++)
for(col=0;col<3;col++)
{
if(row+col==2)
counterSum+=arr[row][col];
}
System.out.println("The sum of counter diagonal elements is : "+counterSum);
}
}


Output:

Enter the 3x3 matrix elements : 1 2 3 4 5 6 7 8 9
Matrix is :
1 2 3
4 5 6
7 8 9
The sum of main diagonal elements is : 15
The sum of counter diagonal elements is : 15

Have you mastered basic programming topics of java and looking forward to mastering advanced topics in a java programming language? Go with these ultimate Advanced java programs examples with output & achieve your goal in improving java coding skills.

Related Java Programs: