Cody

# Problem 21. Return the 3n+1 sequence for n

Solution 1668767

Submitted on 7 Nov 2018 by Sharon Spelt
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
n = 1; c_correct = 1; assert(isequal(collatz(n),c_correct))

result = 1 i = 1 finalVec = 1

2   Pass
n = 2; c_correct = [2 1]; assert(isequal(collatz(n),c_correct))

result = 2 i = 1 finalVec = 2 oddeven = 0 result = 1 i = 2 finalVec = 2 1

3   Pass
n = 5; c_correct = [5 16 8 4 2 1]; assert(isequal(collatz(n),c_correct))

result = 5 i = 1 finalVec = 5 oddeven = 1 result = 16 i = 2 finalVec = 5 16 oddeven = 0 result = 8 i = 3 finalVec = 5 16 8 oddeven = 0 result = 4 i = 4 finalVec = 5 16 8 4 oddeven = 0 result = 2 i = 5 finalVec = 5 16 8 4 2 oddeven = 0 result = 1 i = 6 finalVec = 5 16 8 4 2 1

4   Pass
n = 22; c_correct = [22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1]; assert(isequal(collatz(n),c_correct))

result = 22 i = 1 finalVec = 22 oddeven = 0 result = 11 i = 2 finalVec = 22 11 oddeven = 1 result = 34 i = 3 finalVec = 22 11 34 oddeven = 0 result = 17 i = 4 finalVec = 22 11 34 17 oddeven = 1 result = 52 i = 5 finalVec = 22 11 34 17 52 oddeven = 0 result = 26 i = 6 finalVec = 22 11 34 17 52 26 oddeven = 0 result = 13 i = 7 finalVec = 22 11 34 17 52 26 13 oddeven = 1 result = 40 i = 8 finalVec = 22 11 34 17 52 26 13 40 oddeven = 0 result = 20 i = 9 finalVec = 22 11 34 17 52 26 13 40 20 oddeven = 0 result = 10 i = 10 finalVec = 22 11 34 17 52 26 13 40 20 10 oddeven = 0 result = 5 i = 11 finalVec = 22 11 34 17 52 26 13 40 20 10 5 oddeven = 1 result = 16 i = 12 finalVec = 22 11 34 17 52 26 13 40 20 10 5 16 oddeven = 0 result = 8 i = 13 finalVec = 22 11 34 17 52 26 13 40 20 10 5 16 8 oddeven = 0 result = 4 i = 14 finalVec = 22 11 34 17 52 26 13 40 20 10 5 16 8 4 oddeven = 0 result = 2 i = 15 finalVec = 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 oddeven = 0 result = 1 i = 16 finalVec = 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1