Problem 57715. Easy Sequences 96: One-line Code Challenge - Polynomial Folding Function
The Matlab fold function is a very useful functional programming construct. Unfortunatlely, fold is not available io Cody players.
In this problem we are required to create the function foldPoly, that takes in 2 inputs, a polynomial vector P and a values vector V. Assuming V is never empty, we define the function as follows:
foldPoly = @(P,V) fold(@(a,b) polyval(P,a+b),V);
which is equivalent, in older Matlab, to:
function z = foldPoly(P,V)
z = V(1);
for i = 2:length(V)
z = polyval(P,(V(i)+z));
end
end
The challenge here is to write the foldPoly function in just one (1) line of code, excluding the function start and end line.
-----------------
NOTE: Empty lines and comment lines (starting with %) shall not be counted, but semicolons (;) will be considered as an end-of-line character.
HINT: It is helpful to have a Matlab in your computer (or you can use Matlab Online), to be able check if your implementation behaves the same way as the built-in fold function.
Solution Stats
Problem Comments
-
2 Comments
Dyuman Joshi
on 9 Mar 2023
A slight correction, Ramon - The function fold() is not available as it is a part of a Toolbox, and Cody doesn't have access to Toolboxes.
Cody is updated with the latest MATLAB release, as you can check by running the command "ver" on scratch pad.
Ramon Villamangca
on 24 Mar 2023
The problem description is updated... Thanks Dyuman.
Solution Comments
Show commentsProblem Recent Solvers2
Suggested Problems
-
302 Solvers
-
1237 Solvers
-
Make a random, non-repeating vector.
9153 Solvers
-
415 Solvers
-
solve for y that is half as much as three less than one tenth of x
86 Solvers
More from this Author116
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!