모두CBT

23-3아래 Java 프로그램을 실행했을 때 출력값을 적으시오.publ… | 2023년 정보처리기사실기 3회차 기출문제 상세 페이지

13

23-3

아래 Java 프로그램을 실행했을 때 출력값을 적으시오.

public class Main {
    static int mul(int n) {
        if (n <= 1) {
            return 1;
        }
        return n * mul(n - 1);
    }

    public static void main(String[] args) {
        int total = mul(5) + mul(3);
        System.out.println(total);
    }
}
해설

126


[해설]

mul은 n이 1 이하가 될 때까지 자기 자신을 호출하는 재귀 팩토리얼이다.

  • mul(5) = 5×4×3×2×1 = 120
  • mul(3) = 3×2×1 = 6

두 값을 더한 126이 출력된다. 종료 조건(n <= 1)이 없으면 호출이 끝없이 쌓여 StackOverflowError가 난다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.