Problem 42798. Moving Product (Easy)
Given an input array A, write a function movprod(A,k,dim) to calculate the moving product over a sliding window of length k along the specified dimension dim of input array A. If dim is omitted, operate along the first non-singleton dimension of A.
Example 1:
>> A = [1 2 3 4 5 6]; >> B = movprod(A,3) B = 6 24 60 120
Example 2:
>> A = [1 4 3 6 2 2 5 1 2 3 3 6 2 3 5]; >> B = movprod(A,3,2) B = 12 72 36 10 10 6 36 36 30
You may assume that dim <= 3, and the input array A is a non-empty array with size(A,dim) >= k.
Related problems: Problem 429; Problem 246
A kind note (05/15/2017): This problem was created in 2016, one year before R2017a's introduction of the built-in movprod. To avoid function name clash, we've changed the user-defined function name into moveprod in the test-suite, which gives you the opportunity to solve the problem by directly calling the built-in movprod!
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers32
Suggested Problems
-
6826 Solvers
-
297 Solvers
-
Create a square matrix of multiples
471 Solvers
-
Permute diagonal and antidiagonal
443 Solvers
-
Pernicious Anniversary Problem
820 Solvers
More from this Author29
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!