a1=magic(2);
a2=magic(3);
a3=magic(4);
if i assume a1 a2 a3 and i want to save them to txt file Individually how to write it in loop .
like this a1.txt a2.txt a3.txt
i really need help because i have 50s need to save .it too huge.!!
for i=1:3 save end

1 Kommentar

Stephen23
Stephen23 am 11 Apr. 2015
Bearbeitet: Stephen23 am 12 Apr. 2015
Whatever you do, do not try to create fifty dynamically named variables! This is a bad programming practice, and should be avoided.
Here is an explanation of why dynamically named variables is a poor programming practice:

Melden Sie sich an, um zu kommentieren.

Antworten (3)

Jan
Jan am 11 Apr. 2015

1 Stimme

Avoid hiding an index in the name of the variables. Then the solution is easy:
a = cell(1, 3);
a{1} = magic(2);
a{2} = magic(3);
a{3} = magic(4);
for ia = 1:numel(a)
save(sprintf('File%d.mat'm ia), a{ia});
end
Chris McComb
Chris McComb am 11 Apr. 2015

0 Stimmen

You could do something like this using the dlmwrite function:
for i=1:1:50
dlmwrite(sprintf('%d.txt', i), magic(i));
end
This will save the first 50 magic matrices to text files named 1.txt, 2.txt, 3.txt, etc.
tony kevine
tony kevine am 12 Apr. 2015

0 Stimmen

thanks so much!!

Kategorien

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

Gefragt:

am 11 Apr. 2015

Kommentiert:

am 12 Apr. 2015

Community Treasure Hunt

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

Start Hunting!

Translated by