modify code for polynomial function
Show older comments
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 Comments
Rik
on 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
on 9 Oct 2020
(Answers Dev) Restored edit
Answers (1)
n = length(p)-1 ; % degree of polynomial
val = sum(p.*(x.^(n:-1:0)))
11 Comments
Walter Roberson
on 7 Sep 2020
sum(val)
Walter Roberson
on 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
on 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
on 7 Sep 2020
Walter Roberson
on 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
on 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
on 7 Sep 2020
Walter Roberson
on 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
on 8 Sep 2020
KSSV
on 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
on 8 Sep 2020
Categories
Find more on Polynomials in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!