Cody

Problem 43708. Replace all odd numbers with NaN

Solution 1349711

Submitted on 19 Nov 2017 by jean claude
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
x = [1 3 4 5 8 11]; y_correct = [NaN NaN 4 NaN 8 NaN]; assert(isequaln(replace_odd_with_NaN(x),y_correct))

x = NaN NaN 4 NaN 8 NaN

2   Pass
x = magic(4); y_correct = [16 2 NaN NaN; NaN NaN 10 8; NaN NaN 6 12; 4 14 NaN NaN]; assert(isequaln(replace_odd_with_NaN(x),y_correct))

x = 16 2 NaN NaN NaN NaN 10 8 NaN NaN 6 12 4 14 NaN NaN

3   Pass
x = 1:20; y_correct = [NaN(1,10); 2:2:20]; y_correct = y_correct(:)'; assert(isequaln(replace_odd_with_NaN(x),y_correct))

x = NaN 2 NaN 4 NaN 6 NaN 8 NaN 10 NaN 12 NaN 14 NaN 16 NaN 18 NaN 20

4   Pass
x = pascal(2); y_correct = [NaN NaN; NaN 2]; assert(isequaln(replace_odd_with_NaN(x),y_correct))

x = NaN NaN NaN 2

5   Pass
x = eye(3); y_correct = [NaN 0 0; 0 NaN 0; 0 0 NaN]; assert(isequaln(replace_odd_with_NaN(x),y_correct))

x = NaN 0 0 0 NaN 0 0 0 NaN

Suggested Problems

More from this Author7

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!