Save the values of a function in a for loop
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Austin Hernandez
le 27 Avr 2020
Commenté : Mrutyunjaya Hiremath
le 27 Avr 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 commentaires
Mohammad Sami
le 27 Avr 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.
Réponse acceptée
Mrutyunjaya Hiremath
le 27 Avr 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 commentaires
Mrutyunjaya Hiremath
le 27 Avr 2020
@ Austin,
Thank you
And, Initialize the values with One NOT Zero ...
c = 1;
m = 1;
u = 1;
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!