MATLAB: Rounding of the numbers in a array as per a condition

rounding of the numbers in a array as per a condition

hi..
suppose i have an array x=[1 ,2, -2.2, 2.2, -3, 4];
all the elements of the above array should satisfy the condition that they should lie in the interval [-2 2];
if any element is less than '-2' then i should round-off it to '-2'.
if any element is greater than '2' then i should round-off it to '2'.
but remaining elements should be unchanged.
so,finally i should get the answer as x = [1 ,2 ,-2 ,2, -2, 2];
is there a smart coding way with out using loops.
Regards.
Chandradhar Savanth…

Best Answer

  • max(min(x,2),-2)