Polynomial with nested and anonymous functions.
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Wai Han
le 22 Oct 2020
Commenté : Senal Direcksze
le 11 Fév 2021
How can I write this polynomial function without loops?
function fh = get_polynomial_handle(p)
function polynomial = poly(x)
polynomial = 0;
for i = 1 : length(p)
polynomial = polynomial + p(i) .* x.^(i-1);
end
end
fh = @poly;
end
% I try to make this function recursively, but anyway, I am having some errors in writting this function without loop.
% Can anyone explain me?
% Note: The function is not necessary to be recursive, it's just one of the ways I've thought of.
0 commentaires
Réponse acceptée
Ameer Hamza
le 22 Oct 2020
Something like this
polynomial = sum(p .* x.^(0:numel(p)-1));
Also see polyval().
3 commentaires
Senal Direcksze
le 11 Fév 2021
Thanks a lot mn. You just made my day, was stuck in this question for quite a while since yesterday. I was at 2 out of 3 errors. Even posted a forum to my lecturer for the first time last night.
P.S I tried with length & recursion but kept getting bugs for atleast one or 2 errors. Either some inputs didnt work properly or out of memory.
function pf = poly_fun(p)
if nargin < 1%Check no.of inputs
return;
end
function polynomial = poly(x)
polynomial = sum(p .* x.^(0:numel(p)-1));%numel for polynomial exponential
end
pf = @poly;
end
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Polynomials 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!