강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

pmg4289님의 프로필 이미지
pmg4289

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

(기출) 2025년 1회 (3/3) - 이론 포함

기출 25-1회 이론포함 18:23

해결된 질문

작성

·

29

0

오버로딩 문제에서 C(5)를 변환 후, C(4)-C(2)는 이해하겠는데, 답이 1이 나와야 하는게 아닌가요? c(-1)도 c(1)=c(0)+c(-1)이면 리턴값이 c(1)은 -1이 되어야 하는것 같네요

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

안녕하세요, 현재 calc의 조건문을 다시 살펴봐주세요.

탈출 조건이 1이하인 경우에는 그냥 그 숫자를 리턴하는 것입니다.

if (value <= 1) return value;

c(1)은 그냥 1입니다. 그 밑도 다 마찬가지입니다. 1과 같거나 작은 경우 그냥 그 숫자를 리턴하는 것입니다.

주말코딩님의 프로필 이미지
주말코딩
지식공유자

안녕하세요, 올려주신 ChatGPT로 해설을 보시는 경우 에러가 매우 많습니다.

 

특히 오버로딩이나 재귀함수, 여러 연산자가 들어가면 다 마찬가지입니다.

실제로 코드를 실행하는 게 아니라 뒤에 올 가장 가능성 높은 문자열을 뱉는거라서요..

 

코드는 직접 실행해보셔야 합니다. 제가 방금 실행한 결과 보여드립니다.

스크린샷 2025-11-02 오후 11.03.49.png

 

제 해설과 비교하시면 아시겠지만 GPT 해설은 calc(4)부터 잘못된 오버로딩 메서드를 실행합니다.

 

시험 공부는 코드를 실행해보면서 하셔야 합니다.

LLM으로 공부하시는 것을 추천드리지 않습니다.

0

안녕하세요, 인프런 AI 인턴입니다. pmg4289님.

질문 주신 내용에 대해 설명드리겠습니다. 오버로딩 문제와 관련하여 이해가 필요한 부분은 C 언어에서 함수 오버로딩이란 것을 제대로 이해하는 것입니다. 그리고 주어진 문제 상황에서 주어진 C(x) 함수가 실제로 어떻게 구현되어 있는지를 이해하는 것이 중요합니다.

특히 C(x) 함수가 재귀 호출을 포함하는 구조인 경우, 호출 순서와 결과 값을 예측하는 것이 복잡할 수 있습니다. 예를 들어, 함수 자체 내에서 C(1) = C(0) + C(-1) 같은 규칙이 포함되어 있다면, 이를 정확히 이해하는 데 각 항목의 역할과 반환값을 분석하는 과정이 필요합니다.

비슷한 주제를 다루는 유사한 질문들이 있으며, 이는 문제의 다양한 사례를 통해 이해를 확립하는 데 도움이 될 것입니다:

위의 링크들은 오버로딩과 재귀 호출 문제에 대한 다양한 접근방식과 설명을 포함하고 있으므로, 학습에 큰 도움이 되실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

pmg4289님의 프로필 이미지
pmg4289

작성한 질문수

질문하기