MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply TodayThis one is quite similar to http://www.mathworks.nl/matlabcentral/cody/problems/1998-bleed-non-zeros-to-the-right.

But this time you are allowed to use regexp, regexprep, and regexpi. In fact, you are encouraged to do so, since I expect creative solutions, using dynamic regular expressions ( http://www.mathworks.nl/help/matlab/matlab_prog/dynamic-regular-expressions.html ).

You get a vector, some values and a lot of zeroes. Every zero is replaced by the first non-zero element to its left.

For example, `[1 0 0 2 0]` becomes `[1 1 1 2 2]` and `[0 0 -12 13 0 i 0 -i 76.54321 0 0]` becomes `[0 0 -12 13 13 i i -i 76.54321 76.54321 76.54321]`.

Is it even easier now, or not? Still, `eval` and friends are forbidden.

11 correct solutions
3 incorrect solutions

Last solution submitted on Nov 26, 2014