How can I create an array with a for loop?
Mostrar comentarios más antiguos
Hi I’m trying to create an array of values that are output from a function. The function goes from -20 to 50 but I can’t create an array that large so I’m confused on what to do. The attached picture is what I have so far and it’s not working.
% code
clear all;
close all;
A = zeros(1:70);
for m = 1:70;
n = -50:20;
X = power(0.8,n)
A(m) = X
end
stem(n,arrayofA(n))
1 comentario
Stephen23
el 12 de Mzo. de 2018
Do not use the accepted answer: a loop is NOT required:
n = -50:20;
A = power(0.8,n);
Respuestas (2)
Torsten
el 12 de Mzo. de 2018
A = zeros(1,71);
n = -50:20;
A = power(0.8,n)
1 comentario
Jos (10584)
el 12 de Mzo. de 2018
This is preferred over the solution with a for-loop. However, there is no need to initialise A with zeros first, since you overwrite it at the third line.
Try this:
A=zeros(1,70);n=-50:20;
for m=1:numel(n)
A(m)=power(0.8,n(m));
end
stem(n,A)
5 comentarios
Paige Coffeen
el 12 de Mzo. de 2018
Birdman
el 12 de Mzo. de 2018
It is the condition for the loop to be operated. m starts at 1, incremented by 1 and the loop is over when m is equal to the number of elements in n vector, which is 71. At each step, the statement in for loop is executed and the result is stored in A array.
Jos (10584)
el 12 de Mzo. de 2018
As Torsten showed, A = power(0.8,n) would do. No need for a for-loop
y = zeros(1,12);
for i = 1:12
y(i+1) = y(i) + ((5 - (4/50)*y(i)));
end
y
x = zeros(1,10);
for i = 10:-1:2
x(i-1) = x(i) + ((5 + (4/50)*x(i)));
end
x
Good Day,
May I ask how can I insert the start and stop variable on above code? for example I want to start in 17 to 30 or 15 to 2 with decrementing step.
Thanks and Regards,
Dennis
Walter Roberson
el 24 de Ag. de 2021
You should ask your own question for that.
Categorías
Más información sobre Loops and Conditional Statements 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!