My code works to d=50 and fails on the higher values in the test suite. I think it is a hardwarelimited rounding error (?swamping) with very large numbers. When I test eps(fibonacci(100)) on my system, the answer is 6.5 ie my system can not accurately distinguish odd from even at that large a number.
Leo, your theory is correct: The numbers that you're calculating for d>50 are too large to be represented by a 32bit digit, and won't be calculated correctly for mod(x,2). Think very carefully about the number pattern in the Fibonacci sequence, and see if a pattern emerges.
Indeed, My code works until the d = 50 because it's a large number, so our algorithm is correct we should not worry about it, I think we have succeed in this challenge.
Test  Status  Code Input and Output 

1  Pass 
d = 14;
y_correct = 4;
assert(isequal(evenFibo(d),y_correct))
y =
4

2  Pass 
d = 20;
y_correct = 6;
assert(isequal(evenFibo(d),y_correct))
y =
6

3  Pass 
d = 50;
y_correct = 16;
assert(isequal(evenFibo(d),y_correct))
y =
16

4  Fail 
d = 100;
y_correct = 33;
assert(isequal(evenFibo(d),y_correct))
y =
48

5  Fail 
d = 150;
y_correct = 50;
assert(isequal(evenFibo(d),y_correct))
y =
98

6  Fail 
d = 200;
y_correct = 66;
assert(isequal(evenFibo(d),y_correct))
y =
148

7  Fail 
d = 500;
y_correct = 166;
assert(isequal(evenFibo(d),y_correct))
y =
448

8  Fail 
d = 1000;
y_correct = 333;
assert(isequal(evenFibo(d),y_correct))
y =
948

9  Fail 
d = 1e4;
y_correct = 3333;
assert(isequal(evenFibo(d),y_correct))
y =
NaN

10  Fail 
d = 2e4;
y_correct = 6666;
assert(isequal(evenFibo(d),y_correct))
y =
NaN

11  Fail 
d = 3e5;
y_correct = 1e5;
assert(isequal(evenFibo(d),y_correct))
y =
NaN

12  Fail 
d = 6e6;
y_correct = 2e6;
assert(isequal(evenFibo(d),y_correct))
%
% %%
% d = 9223372036854775807;
% y_correct = 3074457345618258432;
% assert(isequal(evenFibo(d),y_correct))
y =
NaN

228 Solvers
middleAsColumn: Return all but first and last element as a column vector
326 Solvers
Find the maximum number of decimal places in a set of numbers
175 Solvers
Basics: 'Find the eigenvalues of given matrix
262 Solvers
488 Solvers