# Program to find Normal and Trace of a Square Matrix

Few important points to remember:

• Normal and Trace are only defined for a square matrix.
• Square Matrix: Matrix in which, the number of rows = number of columns.
• Normal: Square root of the sum of the squares of each element of the matrix.
• Trace: Sum of the diagonal elements of a matrix.
• Diagonal Element: An element having same indices for row and column.

Let's have a simple example to understand these terms better:

Below is a program to find Normal and Trace of Square Matrix.

``````#include<stdio.h>
/*
to use the sqrt method to find
the square root of a number we include
*/
#include<math.h>

int main()
{
printf("\n\n\t\tStudytonight - Best place to learn\n\n\n");

int i, j, n, aj, sum = 0, sum1 = 0, a = 0, normal;

printf("\nEnter the number of rows (columns) of the matrix: \n\n");
scanf("%d", &n);

printf("\nEnter the %d elements of the first matrix: \n\n", n*n);

for(i = 0; i < n; i++)   // to iterate the rows
{
for(j = 0; j < n; j++)   // to iterate the columns
{
scanf("%d", &aj[i][j]);
a = aj[i][j]*aj[i][j];  // finding square of each element
sum1 += a;  // same as sum1 = sum1 + a
}
}
normal = sqrt((double)sum1);    // typecasting to double value

printf("\n\nThe normal of the given matrix is: %d", normal);
for(i = 0; i < n; i++)
{
sum = sum + aj[i][i];   // sum of the diagonal elements
}
printf("\n\nThe Trace of the given matrix is: %d", sum);
printf("\n\n\t\t\tCoding is Fun !\n\n\n");
return 0;
}``````