Cody

Problem 44630. Guess the number I'm thinking of

Solution 2850281

Submitted on 19 Aug 2020 by Dennis Gimlin
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
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   Pass
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.4625 successRate = 0.4623 successRate = 0.4619 successRate = 0.4645 successRate = 0.4651 successRate = 0.4616 successRate = 0.4654 successRate = 0.4617 successRate = 0.4613 successRate = 0.4645 Elapsed time is 3.781540 seconds.

Suggested Problems

More from this Author31

Community Treasure Hunt

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

Start Hunting!