Filter löschen
Filter löschen

I have written a code to assign each co-ordinate of matrix A(5 x 5) as A(1,1) = 1; A(1,2) = 2; and so on till A(5,5) = 25. But the code is giving errors.

1 Ansicht (letzte 30 Tage)
I need to store it in an array using loops like [1 2 ....25]. The below code is giving me, "Expression is incorrect--possibly unbalanced (, {, or [." k = 1; for i = 1:r; for j = 1:c; A(k,:) = (i,j); k = k + 1; end end

Akzeptierte Antwort

John D'Errico
John D'Errico am 15 Mär. 2016
The line:
A(k,:) = (i,j);
is not valid MATLAB syntax. Perhaps you wanted to write
A(k,:) = [i,j];
I cannot know if that is what you really want.
Of course, you can replace the loops completely using tools like meshgrid of ndgrid.
  2 Kommentare
Neha W
Neha W am 15 Mär. 2016
Thank you. I will definitely try to implement using meshgrid.
John D'Errico
John D'Errico am 15 Mär. 2016
Something like this would be a start:
[rr,cc] = meshgrid(1:r,1:c);
A = [rr(:),cc(:)];
I'd need to check to see if it generates them in the sequence you asked for, but it will be close.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by