By my reading, this is close to a correct solution. The second half looks OK, but I think you may need to tweak some code in the first half.
Test | Status | Code Input and Output |
---|---|---|
1 | Pass |
assessFunctionAbsence({'rng', 'RandStream'}, 'FileName','myGuess.m')
|
2 | Pass |
for j = 1 : 1000
numberToBeGuessed = randi(10);
gOO = randperm(10, 2);
mG = myGuess(gOO);
assert( mG >= 1 & mG <= 10 , 'Out of requested range.' )
u = unique( floor([gOO mG]) );
assert( length(u) == 3 , 'Your guess must not have been already chosen.' )
end;
|
3 | Fail |
maxIts = 100000;
tic
for j = 1 : 10
WDL = [0 0 0];
for itn = 1 : maxIts
numberToBeGuessed = randi(10);
gOO = randperm(10, 2);
diffs = abs( [gOO myGuess(gOO)] - numberToBeGuessed );
winningContestant = find( min(diffs)==diffs );
if any( winningContestant == 3 ),
if length(winningContestant) == 1,
% Win
WDL(1) = WDL(1) + 1;
else
% Draw
WDL(2) = WDL(2) + 1;
end;
else
% Loss
WDL(3) = WDL(3) + 1;
end;
end;
successRate = (WDL(1) + WDL(2)/2) / maxIts
assert( successRate >= 0.45 )
end;
toc
successRate =
0.4472
|
3306 Solvers
158 Solvers
328 Solvers
Relative ratio of "1" in binary number
150 Solvers
275 Solvers