Provide a Matlab code to print Diagonal elements in a matrix

2 views (last 30 days)
In a given n*n matrix we have to traverse each row and print diagonal elements of each row.
For example m = [4 5 6;7 8 9;10 11 12] , expected answer is :
4
5 7
6 8 10
It would of great help if Code is provided.

Accepted Answer

Adithya
Adithya on 1 Mar 2023
Below is the code to print diagonal elements of each row:
m = [4 5 6;7 8 9;10 11 12];
n = size(m,1);
for i=1:n
k=1;
for j=1:i
fprintf('%d ',m(k,i-j+1))
k=k+1;
end
disp(' ');
end
% output:
% 4
% 5 7
% 6 8 10
Logic : first loop ie i=1:n is to traverse row wise in a matrix m and second loop is to print the diagonal elements in a matrix also if we are in first row we have to print one element ,in second row 2 elements is to be printed and in ith row i elements have to be printed, disp function is used to move to new line after printing diagonal elements of previous row.

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!