How to store the results from an iteration process?

1 Ansicht (letzte 30 Tage)
Andes
Andes am 31 Jan. 2017
Kommentiert: Andes am 1 Feb. 2017
Hello,
I need to store the results from a iteration similar to this: clear all A = (1:10)'; for i = 1:2 for x=[5 11] B = A * x; end C(:,i) = B; end but here only the last result is stored. I need this: C =[A*5,A*11] but with an iteration process similar to the above code. Any suggestions... Thank you very much in advance!

Akzeptierte Antwort

Niels
Niels am 31 Jan. 2017
maybe this does what you want
clc
clear all
A = (1:10)';
x=[5 11];
C=zeros(length(A),length(x));
for i = 1:2
C(:,i) = A * x(i);
end
if it does, you forgot to index x, you had 1 loop to much. for any i x would be 5 and 11.
and you forgot to preallocate C

Weitere Antworten (1)

Roger Stafford
Roger Stafford am 31 Jan. 2017
You have one too many for-loops
clear all
A = (1:10)';
x = [5,11];
for i = 1:2
C(:,i) = A * x(i);
end

Community Treasure Hunt

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

Start Hunting!

Translated by