logo Practice-It logo

Recursive Tracing

Language/Type: Java mod recursion recursive tracing
Author: Stuart Reges (on 2014/02/13)

Consider the following method:

    public int mystery(int n) {
        if (n < 0) {
            return -mystery(-n);
        } else if (n < 10) {
            return (n + 1) % 10;
        } else {
            return 10 * mystery(n / 10) + (n + 1) % 10;
    }
    }

For each call below, indicate what value is returned:

mystery(7)
mystery(42)
mystery(385)
mystery(-790)
mystery(89294)

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.