Problem 375. N-Dimensional Array Slice
Given an N-dimensional array, A, an index, I, and a dimension, d, return the I th elements of A in the d dimension.
For Example,
array_slice( A, 5, 3 )
is equivalent to
A(:,:,5)
Note: eval and str2func cannot be used. This is a Cody restriction.
Solution Stats
Problem Comments
-
7 Comments
What test 3 means???
The question is simple yet really well thought. One of my very fundamental concepts got clarified after solving this problem.
Please, edit the problem to make it clear 'eval' cannot be used.
I think same like Fulaninho de Tal, You need edit the problem and it clear 'eval' and 'str2func' cannot be used.
How do do want to handle when the index is bigger than the size of the array? In solution 2 or 3 you enter a 5x5 array, but request slice index 10.
i like it
Massimo Zanetti & Kevin Hellemans: in Test 3 the value 10 is entered as the dimension argument (not the index argument, which has a value of 1).
Thus in Test 3 the general solution would be A(:, :, :, :, :, :, :, :, :, 1).
—DIV
Solution Comments
Show commentsProblem Recent Solvers221
Suggested Problems
-
Duplicate each element of a vector.
609 Solvers
-
Calculate the area of a triangle between three points
3109 Solvers
-
Permute diagonal and antidiagonal
452 Solvers
-
Determine the number of odd integers in a vector
743 Solvers
-
2218 Solvers
More from this Author56
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!