how to create a series of changes over the loop variable and can assign a value to it
Mostrar comentarios más antiguos
how to create a series of changes over the loop variable and can assign a value to it Example
for r=1:3
A|r| = r
B|r| = A|r+1| + A|r|
end
the result
A1=1
A2=2
A3=3
B1=3
B2=5
...
Respuesta aceptada
Más respuestas (2)
Image Analyst
el 19 de Mayo de 2013
You don't have a good condition for when r = the last value, for example, what is A(4) when r only goes to 3. But ignoring that last element, this will work for you:
n=10
A=1:n
B = A + [A(2:end) 0]
In command window:
n =
10
A =
1 2 3 4 5 6 7 8 9 10
B =
3 5 7 9 11 13 15 17 19 10
If you want to add the last element of A then turn the 0 into A(n).
Image Analyst
el 19 de Mayo de 2013
This works just fine (if that's what you want to do):
clc;
for i=1:4
A{i} = rand(3,4+i)
end
whos A
A =
[3x5 double]
A =
[3x5 double] [3x6 double]
A =
[3x5 double] [3x6 double] [3x7 double]
A =
[3x5 double] [3x6 double] [3x7 double] [3x8 double]
Name Size Bytes Class Attributes
A 1x4 1072 cell
See how it grows with each iteration and the size of the last-added cell is bigger each time? Just what you wanted, right?
3 comentarios
Pham Ngoc Thanh
el 22 de Mayo de 2013
Image Analyst
el 22 de Mayo de 2013
You can't multiply a 3x5 by a 6x3 - it doesn't work. Anyway, I see you've already accepted another answer so I guess you got it solved that way.
Pham Ngoc Thanh
el 22 de Mayo de 2013
Categorías
Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!