CS/SICP in JS

연습문제 1.17

띵킹 2023. 2. 11. 15:58
function times(a, b){
    return b === 0
    ? 0
    : a + times(a,b - 1);
}

function double(n){
    return n + n;
}

function halve(n){
    return n / 2;
}

function fast_times(a, b){
    return b === 0
    ? 0
    : is_even(b)
    ? fast_times(double(a), halve(b))
    : a + times(a ,b - 1);
}

function is_even(n) {
    return n % 2 === 0;
}
728x90

'CS > SICP in JS' 카테고리의 다른 글

연습문제 1.31  (0) 2023.02.18
연습문제 1.30  (0) 2023.02.18
연습문제 1.16  (0) 2023.02.11
연습문제 1.12  (0) 2023.02.10
연습문제 1.11  (0) 2023.02.10