Recursive Integer Guessing Game

A recursive algorithm that queries an objective function to guess an unknown integer.
249 Downloads
Updated 21 Mar 2012

View License

An integer guessing 'game' for a
function `isleq', that returns true for
all values less than or equal to a
mystery number.

Syntax: z=guessgame(isleq,n,k)

In tertiary function notation:

g(n,k) =
| k==0 :: isleq(n) ? n : n+1;
| k>0 :: isleq(n+(2^k)-1) ?
g(n,k-1) : g(n+2^k,k-1);
| k<0 :: isleq(n+(2^(-k))-1) ?
g(n,(-k)-1) : g(n+(2^(-k)),k-1);

g(n,-k) for -k negative refers to an
unbounded search [n,inf] with current
search depth up to (n+2^(-k)-1) :

e.g. g(15,-4) denotes [15,30].

g(n,k) for k positive refers to a
search over the interval
[n,(n+(2^(k+1))-1)] :

e.g. guess(63,5) denotes [63,126].

Initial function should be run with n
set as a lower bound (default 1).

Function isleq can be replaced with an
integer instead.

Cite As

Adam Gripton (2026). Recursive Integer Guessing Game (https://nl.mathworks.com/matlabcentral/fileexchange/35787-recursive-integer-guessing-game), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Magic in Help Center and MATLAB Answers
Version Published Release Notes
1.0.0.0