How do I run increments of numbers through a function?
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I would like to know how to run numerous numbers through a function. For example, I would like to start at number 95 and decrease by increments of .1.
so 95.0000, 94.9000, 94.8000, 94.7000, 94.6000, 94.5000, 94.4000....... and so on...
I want to run these numbers to the attached function "m.m" file until the output generated is 35
0 Commenti
Risposte (2)
Walter Roberson
il 9 Feb 2018
L = 95;
while true
output = m(L);
fprintf('For L = %f, output = %g\n', L, output);
if output == 35
break;
end
L = L - 0.1;
end
However.... there is no guarantee that m() will ever give an output of exactly 35. http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F
If the task were to find the L such that m(L) == 35, then you would not proceed sequentially: you would use fzero or fsolve:
fzero(@(L) m(L)-35, 95)
0 Commenti
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!