modify code for polynomial function
Afficher commentaires plus anciens
function fh = poly_fun(p)
function polynomial = poly(x)
polynomial = 0;
ii = 1:length(p)
polynomial = polynomial + p(ii).*x.^(ii-1);
end
fh = @poly;
end
2 commentaires
Rik
le 8 Sep 2020
Unforturnately for Mohaiminul Islam Google cache takes some time to update, so the evidence of his attempt to cheat is foiled. A permalink to what he posted can be found here (will take a few hours to become available).
Removing your question after receiving an answer and help is extremely rude. It is also pointless, because of comments like this enable your teacher to find your post, and because site admins can often restore your edit.
Rena Berman
le 9 Oct 2020
(Answers Dev) Restored edit
Réponses (1)
n = length(p)-1 ; % degree of polynomial
val = sum(p.*(x.^(n:-1:0)))
11 commentaires
Walter Roberson
le 7 Sep 2020
sum(val)
Walter Roberson
le 7 Sep 2020
You do not tell us what the requirements are, so we cannot tell you whether the code is correct or not.
I would point out that you have no assignments inside your function poly(), and in particular do not assign to your left hand side, polynomial
Walter Roberson
le 7 Sep 2020
Notice that the sample code assigns to polynomial within function poly. Your code based upon KSSV's suggestion does not assign to polynomial within function poly.
Mohaiminul Islam
le 7 Sep 2020
Walter Roberson
le 7 Sep 2020
You need to assign to polynomial within the function poly
The internal function needs to accept a location to evaluate the polynomial at, and needs to return the value of the polynomial evaluated there.
Walter Roberson
le 7 Sep 2020
sum(polynomial) is not being assigned to any variable, and it has no semi-colon after the end of it. MATLAB is going to compute the value and then display it, but is not going to assign the result to anything. The effect is the same as
disp(sum(polynomial))
Mohaiminul Islam
le 7 Sep 2020
Walter Roberson
le 8 Sep 2020
You are not asked to display the sum of the polynomial. Therefore there are two possibilities that you will need to decide between:
- Delete the line sum(polynomial) as not contributing anything to what you are returning from the function; or
- Assign the result of sum(polynomial) to something.
Reminder:
The internal function needs to accept a location to evaluate the polynomial at, and needs to return the value of the polynomial evaluated there.
Mohaiminul Islam
le 8 Sep 2020
KSSV
le 8 Sep 2020
There should be sum. I missed it and Walter Roberson pointed it. Hat's off to Walter Roberson for your patience.
Mohaiminul Islam
le 8 Sep 2020
Catégories
En savoir plus sur Polynomials dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!