Save the values of a function in a for loop
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Austin Hernandez
am 27 Apr. 2020
Kommentiert: Mrutyunjaya Hiremath
am 27 Apr. 2020
I need to record the y-values of a line from x=a to x=b.
Each loop, the slope of the line will change so there will be a different set of x and y's for each loop
How can I record the y-values from the function for each loop? The above fix doesn't work if a function is inside of it. This is my code and gives me an error once it trys to record y(i):
function for_test
x = 0:1:10;
y = ones(size(x)) ;
for i=1:10
y(i) = x+rand;
y % use y(i) so that it is written as a vector
end
end
2 Kommentare
Mohammad Sami
am 27 Apr. 2020
The problem is this line
y(i) = x+rand;
The variable x is length 11
x+rand; % this would generate an output of length 11
However you are trying to assign it to a single value of y
y(i) % this is lenght 1
Therefore you are getting an error in assignment.
Akzeptierte Antwort
Mrutyunjaya Hiremath
am 27 Apr. 2020
Hell Austin Hernandez,
you are correct. but Option01 is good.
Option 01:
function for_test
x = 0:1:10;
y = zeros(size(x)) ;
for i=1:10
y(i,:) = x+rand;
y % use y(i) so that it is written as a vector
end
end
Option 02:
function for_test
x = 0:1:10;
y = {}; %ones(size(x)) ;
for i=1:10
y{i} = x+rand;
y % use y(i) so that it is written as a vector
end
end
5 Kommentare
Mrutyunjaya Hiremath
am 27 Apr. 2020
@ Austin,
Thank you
And, Initialize the values with One NOT Zero ...
c = 1;
m = 1;
u = 1;
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Annotations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!