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, int m) {
        if (n == 0 || m == 0) {
            return 0;
        } else if (n % 10 == m % 10) {
            return 1 + mystery(n / 10, m / 10);
        } else {
            return mystery(n / 10, m / 10);
        }
    }

For each call below, indicate what output is produced:

mystery(18, 0)
mystery(8, 18)
mystery(25, 21)
mystery(305, 315)
mystery(20734, 1724)

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.