Unless my math (or counting) is wrong, the result of 1/17 by long division has a 16digit (not 15) recurring cycle. I cannot find an error in my code or hand calculations. Any help?
I believe you are right, the current test results seem to use something similar to the current leading method which disregards the effect of 0's so it typically underestimates the cycle length when d>10...
I believe in the test problems the cycle lengths of 17,19,197,1977,12345 should be 16,18,98,658,822 instead...
And those are precisely the numbers I am getting.
Wikipedia agrees with you: http://en.wikipedia.org/wiki/Repeating_decimal#Cyclic_numbers
Test  Status  Code Input and Output 

1  Pass 
%%
x = 1;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

2  Pass 
%%
x = 2;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

3  Pass 
%%
x = 3;
y_correct = 1;
assert(isequal(recurring_cycle(x),y_correct))

4  Pass 
%%
x = 4;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

5  Pass 
%%
x = 5;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

6  Pass 
%%
x = 6;
y_correct = 1;
assert(isequal(recurring_cycle(x),y_correct))

7  Pass 
%%
x = 7;
y_correct = 6;
assert(isequal(recurring_cycle(x),y_correct))

8  Pass 
%%
x = 8;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

9  Pass 
%%
x = 9;
y_correct = 1;
assert(isequal(recurring_cycle(x),y_correct))

10  Pass 
%%
x = 10;
y_correct = 0;
assert(isequal(recurring_cycle(x),y_correct))

11  Pass 
%%
x = 17;
y_correct = 16;
assert(isequal(recurring_cycle(x),y_correct))

12  Pass 
%%
x = 19;
y_correct = 18;
assert(isequal(recurring_cycle(x),y_correct))

13  Pass 
%%
x = 197;
y_correct = 98;
assert(isequal(recurring_cycle(x),y_correct))

14  Pass 
%%
x = 1977;
y_correct = 658;
assert(isequal(recurring_cycle(x),y_correct))

15  Pass 
%%
x = 12345;
y_correct = 822;
assert(isequal(recurring_cycle(x),y_correct))

Return the largest number that is adjacent to a zero
3158 Solvers
749 Solvers
Project Euler: Problem 1, Multiples of 3 and 5
1079 Solvers
108 Solvers
Fermat's Last Theorem  Fermat's conjecture
52 Solvers