daily

23.04.12. 혼자 공부하는 자바스크립트 확인문제 풀이 기록[1]

Juhyuck 2023. 4. 12. 22:55
728x90

챕터 5 함수

1. 함수의 기본 형태

(1번 문제) A부터 B까지 범위를 지정했을 때 범위 안의 숫자를 모두 곱하는 함수를 만들기

다양한 방법으로 만들어 볼 수 있을 것 같아서 아래와 같은 방법으로 구현해 봤다.

 

// while문으로 구현
function multiplyAllWhile(first, second) {
    let middle = second
    let result = 1
    while (middle + 1 !== first) {
        result *= middle--
    }
    return result
}

console.log(multiplyAllWhile(3, 5))

// 재귀함수로 구현
function multiplyAllRecursion(first, second) {
    if (second === first) {
        return first
    } else {
        return (second * multiplyAllRecursion(first, second - 1))
    }
}

console.log(multiplyAllRecursion(3, 5))

// for문으로 구현
function multiplyAllFor(first, second) {
    let result = 1
    for (let middle = second; middle + 1 !== first; middle--) {
        result *= middle
    }
    return result
}

console.log(multiplyAllFor(3, 5))

// Array로 구현... 숫자가 array로 되어있다는 가정으로
function multiplyAllArray(arr) {
    let result = 1
    while (i = arr.pop()) {
        result *= i
    }
    return result
}

console.log(multiplyAllArray([3,4,5]))

 

'daily' 카테고리의 다른 글

23, 15주차  (0) 2023.04.13
23.04.10. 실행 컨텍스트 더 알아보기 문제  (0) 2023.04.12
23, 13~14주차  (0) 2023.04.09
23.04.07. JS 기본 문법 연습  (0) 2023.04.07
23.04.05. sorting 알고리즘 만들어보기  (0) 2023.04.05