How can I write this C code snippet in MATLAB?

for(j=0;j<n;j++)
{
for(i=0,k=j;i<=j && k<=j; i++)
{
printf("%d ", Mat[k][i]);
k--;
}
}
The difference in for loop syntax between the two languages is troubling me actually... Please help

2 个评论

What is the line "print [k][i]" supposed to do?
it will print the value present at the point [k][i] of a 2-D matrix

请先登录,再进行评论。

回答(1 个)

In the above code you are trying to print elements in anti diagonal fashion for example :
Consider Mat = [1,2,3;4,5,6;7,8,9]
Now u have to print it as
1
4 2
7 5 3
% Define the matrix
m = [1 2 3; 4 5 6; 7 8 9];
% Get the number of rows in the matrix
n = size(m, 1);
% Loop over the rows of the matrix and print them in the desired format
cnt=0;
for j = 1:3
k=1;
for i=1:j
disp(m(j-i+1,k))
k=k+1;
end
end

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by