The solution which I presented just now works perfectly fine on the live editor of Matlab, but don't know why math works still say it is incorrect?
use fix instead of floor or ceil command
Test  Status  Code Input and Output 

1  Fail 
x = 8.8;
y_correct = 8;
assert(isequal(round_zero(x),y_correct))
x =
8

2  Fail 
x = 8.8;
y_correct = 8;
assert(isequal(round_zero(x),y_correct))
x =
8

3  Fail 
x = 0.8;
y_correct = 0;
assert(isequal(round_zero(x),y_correct))
x =
0

4  Fail 
x = 0.4;
y_correct = 0;
assert(isequal(round_zero(x),y_correct))
x =
0

5  Fail 
x = 0;
y_correct = 0;
assert(isequal(round_zero(x),y_correct))
x =
0

6  Fail 
x = eps;
y_correct = 0;
assert(isequal(round_zero(x),y_correct))
x =
0

7  Fail 
x = pi;
y_correct = 3;
assert(isequal(round_zero(x),y_correct))
x =
3

Maximum running product for a string of numbers
832 Solvers
563 Solvers
Rounding off numbers to n decimals
293 Solvers
Calculate square and cube of number
169 Solvers
221 Solvers