Find the zero array in the matrix and replace it with average of surrounding (adjacent) arrays.
Example:
A =
3 5 7 90 1
5 1 -1 0 2
1 2 3 4 70
23 1 2 3 5
Output is:
B=23.75;
Solution Stats
Problem Comments
5 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers43
Suggested Problems
-
423 Solvers
-
Get the elements of diagonal and antidiagonal for any m-by-n matrix
519 Solvers
-
98 Solvers
-
Multiples of a Number in a Given Range
944 Solvers
-
Create a matrix with difference of each row of input matrix
76 Solvers
More from this Author2
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
I think you want to write A and not x:
assert(isequal(adjacent_averaging(A),B))
test case #2 and 3 should be corrected. Instead of x, it should be A
What elements do you consider the "surrounding arrays"?
Surrounding arrays apparently are the elements right above, below, left, and right the zero elements. Found out by reverse engineering. The x is still a mystery.
More tests please. A lot of solutions assume that 0 can't be in the first (or last) column.