# The parallel to the diagonal in C++

closed Feb 13, 2019

Give a matrix m with N lines and N columns and two numbers i and j representing the position in the array of the first element of a parallel to the main diagonal. Show all the elements from the top down from that parallel to the diagonal.
Input data
From the first line, read the N number on the keypad. The following N lines read N natural numbers representing the coordinates of the matrix. The last line reads the numbers i and j.
Output data
The program will display on screen a number of numbers representing the elements on the diagonal parallel.

Restrictions and clarifications

• 1 <= N <= 50
• 0 < i ,j <= N
• 1 <= m[i][j] <= 100

always i = 1 or j = 1
The lines and columns are numbered 1 to N

#include<iostream>

using namespace std;

int

main ()

{

int m, i, j, n, d;

cout << "n=";

cin >> n;

cout << "intoducere elemente matrice= " << endl;

for (i = 1; i <= n; i++)

for (j = 1; j <= n; j++)

{

//cout << "m[" << i << "," << j << "]=";

cin >> m[i][j];

}

cout << "i,j=";

cin >> i >> j;

if (i < j)

{

d = j - 1;

}

else

{

d = i - 1;

}

if (i < j)

{

cout << "parcugere matrice deasupra diagonalei principala= " << endl;

for (i = 1; i < n; i++)

{

j = i + d;

if (j <= n)

{

cout << m[i][j] << "  ";

}

}

cout << endl;

}

else

{

cout << "parcugere matrice sub diagonala principala= " << endl;

for (i = 2; i <= n; i++)

{

j = i - d;

if (j > 0)

{

cout << m[i][j] << "   ";

}

}

cout << endl;

}

return 0;

}

Anyone please you confirm this algorithm is correct for this problem?