To find the sum of secondary diagonal of a Matrix

Thursday, December 4th, 2008

Here is the program to find the sum of the secondary diagonal elements (From right top to  left bottom ) of the entered integer square matrix. The program asks for the order (M, N)  [where M should equal N] of the matrix. Soon after entering the order, the cursor takes to the proper position in the screen to input the matrices. User need to hit ‘Enter’ button after each entry. Matrix is stored as A.

Logic :  The secondary diagonal elements will have a constant relation in their row and column column count. As the row count increases, the column count decreases, to maintain the sum of the two to ( M+1) where M is the order. By keeping this in mind, we can trace the matrix till the end using the help of a for loop.  The flag ‘sum’ is updated in each of the iterations.
Finally, we’ll get the sum of the diagonal elements after the end of the while loop.

You are always welcome with your suggestion and doubts into our discussion forum.

#include<stdio.h>
void main()
{
int A[5][5],i,j,m,n,sum = 0;
clrscr();
printf(“nnt ENTER A ORDER OF THE MATRIX M,N…: “);
scanf(“%d,%d”,&m,&n);
printf(“nnt ENTER THE ELEMENTS OF THE MATRIX..:nn”);
if(m == n)
{
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
gotoxy(20+j*4,12+i*2);
scanf(“%d”,&A[i][j]);
}
printf(“n”);
}
for(i=1;i<=m;i++)
sum = sum + A[i][n+1-i];
printf(“nt THE SUM OF SECONDARY DIAGONAL OF A MATRIX IS…: %d”, sum);
}
else
{
printf(“nt THE ORDER OF THE MATRIX IS NOT CORRECT”);
printf(“nnt HELP : ‘M’ SHOULD BE EQUAL TO ‘N’”);
}
getch();
}
Download exe and source code here.

Avatar Image

Author Name :
Ranjith

Total : 4 Comments


4 Responses to To find the sum of secondary diagonal of a Matrix

  1. sam

    source code has numerous errors ……..rectify it soon

  2. sush

    its givin an error ‘misplaced else’

  3. Dhananjayan

    this programme is not working.plz rectify soon

  4. Empireders

Leave a Reply

Question and Answer
C/C++ Unix & Linux Wordpress
Source codes
C C++ Java

Free email signup