[prev] 56 [next]

Functions (cont)

Example:

// Euclid's gcd algorithm (recursive version)
int euclid_gcd(int m, int n) {
    if (n == 0) {
        return m;
    } else {
        return euclid_gcd(n, m % n);
    }
}

x = euclid_gcd(30, 12)
    ⇒ return euclid_gcd(12, 6)
        ⇒ return euclid_gcd(6, 0)
            ⇒ return 6
        ⇒ return 6
    ⇒ return 6
x = 6