how to use for loop?
1 view (last 30 days)
Show older comments
Matlab & Simulink
on 5 Jul 2014
Commented: Image Analyst
on 5 Jul 2014
Hi every one briefly, I have i=3:5 and j=1:3 and My equation is how to let i=3 for calculating the first raw and let j changes from 1:3 and for second raw i =4 and let j changes from 1:3 and third raw i =4 and let j changes from 1:3 and third
% Calculate the first row.
i=3
for j=1:3
A(i,j)=(A(i-1,1)*A(i-2,j+1)-A(i-1,j+1)*A(i-2,1))/(A(i-1,1))
end
% Calculate the second row
i=4
for j=1:3
A(i,j)=(A(i-1,1)*A(i-2,j+1)-A(i-1,j+1)*A(i-2,1))/(A(i-1,1))
end
% Calculate the third row
i=5
for j=1:3
A(i,j)=(A(i-1,1)*A(i-2,j+1)-A(i-1,j+1)*A(i-2,1))/(A(i-1,1))
end
0 Comments
Accepted Answer
Image Analyst
on 5 Jul 2014
Try this:
clc; % Clear command window.
A = magic(5); % Create some sample data.
% Calculate the first row.
for row = 3 : 5
for column = 1 : 3
A(row, column)= ...
(A(row-1, 1) * A(row-2, column+1) - ...
A(row-1, column+1) * A(row-2, 1)) / ...
A(row-1, 1);
end
end
A % Print to command window.
2 Comments
Image Analyst
on 5 Jul 2014
If you want to tall me what you want to do, there may be a vectorized way, or a function to do what you want to do.
More Answers (1)
ES
on 5 Jul 2014
for i=3:5
for j=1:3
%calculations here.
end
end
Two suggestions: 1. Dont use i and j as variables in matlab as they denote sqrt(-1) 2. Pre allocate arrays before calculation for speed
See Also
Categories
Find more on Adding custom doc in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!