수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

재귀함수에 관하여

꽃은별

2023.04.01



int main(void)
{
int val;
int result;printf(정수 입력: );
scanf_s(%d, &val);
if (val 0)
{
printf(0이상을 입력해야 합니다. \n);
return;
}
result = s(val);
printf(%d!의 계산 결과 : %d \n, val, result);
return 0;
}int s(int n)

{

if (n == 0)
return 1; === 이부분
else
return n*s(n - 1);

}

이게 코드 소스인데 ...

여기서 궁금한점은

저기 == 요렇게 표시되어있는 return 1;

이부분 입니다.

재귀함수라는게 다시 한번더 자기 자신을 호출한다! 라는 말인것은 이해 했습니다.

그런데. return 1을 해주는 이유는 뭐죠?

그냥 return; 을 해주면 되는데 왜 1이 들어가죠?

그래서 제가 저 부분을 100으로 바꿔보니 (키보드에서 3을 입력받았다고 가정했을때)

600 이 나옵니다.

즉, 3팩토리얼 X 100을 한 것이죠.. 이거 왜 X100이 되는지 이해가 가지 않습니다.;

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 남은

    s(n-1) 에서 n-1이 0이된다고 생각해보시면 return 만 하실경우 반환값없이 함수만 종료합니다
    그럼 종료하고 이제 위로 올라가는데
    return n*아무값도 반환하지 않음
    여기서 n 과 곱하기 연산을 진행할 대상이 없으니 결과는 n 이됩니다
    그럼 아무값도 반환하지 않는거랑 1을 반환하는거랑 결과는 같지만 팩토리얼 프로그램이라면서요?
    그럼 1을 곱해야죠

  • 사랑은아픔

    return ;만 해도 결과는 똑같습니다..
    왜 굳이 1을 넣냐는 거죠..

  • 찰스

    팩토리얼 계산식을 풀어보세요
    마지막엔 1과 2가 곱해져야죠 그래서 1을반환해주는겁니다

번호 제 목 글쓴이 날짜
2695984 마크업상으로 하단에 있으나 우선적으로 이미지파일을 다운로드받는 방법 (1) 들꿈 2025-05-25
2695934 tr 속성값 (9) 새 2025-05-25
2695905 ASP로 개발됐을 때 css가 달라져요 ㅠㅠ (4) 슬아라 2025-05-24
2695878 form을 이용한 다른 페이지로 넘기는 방법을 알려주세요 (1) 핫파랑 2025-05-24
2695844 저기 암호화 및 복호화 프로그램.. 만들어볼려는대 (2) 한빛 2025-05-24
2695814 [질문] PDA에서 애플릿이 가능한가요? (1) 봄시내 2025-05-24
2695785 웹 설정 도와줄분 화이트캣 2025-05-23
2695730 갑자기 기억이 안나는데 accesskey 속성.. 빛나라 2025-05-23
2695702 [질문] Java 버전 차이에 의한 오류?!! (2) 검사 2025-05-23
2695672 자바 임베디드 쪽으로 배우고 싶은데요..질문이요.. (1) 뽀그리 2025-05-22
2695647 헉! 이클립스(v3.1)에서 발생되는 널포인트 익셉션? ;;; (3) 아빠몬 2025-05-22
2695586 IFRAME 캐싱 질문 봄나비 2025-05-22
2695498 [질문]실행가능한 jar파일.. 정말 이해가 안가네요... ㅡㅜ;; 터1프한렩 2025-05-21
2695468 자바랑 이클립스에서요.. 스킬 2025-05-21
2695375 Mysql 연동하는 자바 질문있습니다. 아리솔 2025-05-20
2695319 파워포인트 파일을 저장할 수 있을까요? 시윤 2025-05-19
2695289 [질문]Tween 값의 정도를 알고 싶습니다. 타마 2025-05-19
2695238 c 와 c++의 시작 (10) ChocoHoilc 2025-05-18
2695215 탑메뉴의 repeat-x .배경이 두가지에요ㅠ ㅠ 널위해 2025-05-18
2695187 자바스크립트와 자바의 import에 관해서 질문드려요 (1) 무슬 2025-05-18
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com