How can I create an array with a for loop?

420 views (last 30 days)
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 Comment
Stephen23
Stephen23 on 12 Mar 2018
Do not use the accepted answer: a loop is NOT required:
n = -50:20;
A = power(0.8,n);

Sign in to comment.

Answers (2)

Torsten
Torsten on 12 Mar 2018
A = zeros(1,71);
n = -50:20;
A = power(0.8,n)
  1 Comment
Jos (10584)
Jos (10584) on 12 Mar 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.

Sign in to comment.


Birdman
Birdman on 12 Mar 2018
Edited: Birdman on 12 Mar 2018
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 Comments
Dennis M
Dennis M on 24 Aug 2021
y = zeros(1,12);
for i = 1:12
y(i+1) = y(i) + ((5 - (4/50)*y(i)));
end
y
y = 1×13
0 5.0000 9.6000 13.8320 17.7254 21.3074 24.6028 27.6346 30.4238 32.9899 35.3507 37.5227 39.5209
x = zeros(1,10);
for i = 10:-1:2
x(i-1) = x(i) + ((5 + (4/50)*x(i)));
end
x
x = 1×10
62.4378 53.1831 44.6140 36.6796 29.3330 22.5306 16.2320 10.4000 5.0000 0
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
Walter Roberson on 24 Aug 2021
You should ask your own question for that.

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!