getting arrays from for loop

6 次查看(过去 30 天)
according to the following code and output, i want to get the every 'm' array after the for loop one by one to apply to the rest of the code. when i write m(2) to get the 2nd array, it gives the last arrays' 2nd number as 3. how can i get the every array one by one
m=[1 2 3 4 5 6]
for k=1:5
m=circshift(m,1)
end
command window is as follows
m =
1 2 3 4 5 6
m =
6 1 2 3 4 5
m =
5 6 1 2 3 4
m =
4 5 6 1 2 3
m =
3 4 5 6 1 2
m =
2 3 4 5 6 1
>> m =
1 2 3 4 5 6
m =
6 1 2 3 4 5
m =
5 6 1 2 3 4
m =
4 5 6 1 2 3
m =
3 4 5 6 1 2
m =
2 3 4 5 6 1

采纳的回答

Image Analyst
Image Analyst 2021-8-14
Try this to get a 2-D array with each version of m on one row of the 2-D matrix:
m=[1 2 3 4 5 6]
[rows, columns] = size(m);
all_m = zeros(columns, columns);
for k=1:columns
all_m(k, :) = circshift(m,k)
end
all_m =
6 1 2 3 4 5
5 6 1 2 3 4
4 5 6 1 2 3
3 4 5 6 1 2
2 3 4 5 6 1
1 2 3 4 5 6
  4 个评论
Kerem Yüksel
Kerem Yüksel 2021-8-19
how can i get these every array values out of for loop
Image Analyst
Image Analyst 2021-8-19
Once the loop ends, you have all the array values in the variable called all_m. If you want the results from just one particular run, like #2, then do
valuesFromRun2 = all_m(2, :)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by