강의

멘토링

커뮤니티

Inflearn Community Q&A

songsehwa10426's profile image
songsehwa10426

asked

GO Language Programming Core Basics Introduction Course, Easy and Quick to Complete

Advanced Functions

재귀 함수 관련하여 질문이 있습니다.

Written on

·

340

0

func fact(n int) int {
	if n == 0 {
		return 1 // 함수 종료
	}
	return n * fact(n-1)
}

return 값을 0,1 값을 줘서 출력을 해봤는데 

0 을 줄 때는 출력이 0 나오고
1 을 줄 때는 120 나오던데 
return 값을 정확하게 이해가 잘 안됩니다 .... 
go

Answer 1

0

niceman님의 프로필 이미지
niceman
Instructor

안녕하세요.반갑습니다.

fact(0) 일 경우 -> 0 출력

fact(1) 일 경우 -> 1 출력

함수 테스트 결과 정상적으로 수행하는데 결과값이 다르게 나오나 보네요!

다시 한 번 아래 전체코드를 올려드립니다. 참고 부탁드립니다.

 

// Print "Hello World!" message

package main

import "fmt"

func fact(n int) int {

if n == 0 {

return 1 // 함수 종료

}

return n * fact(n-1)

}

func main() {

fmt.Println(fact(10))

}

songsehwa10426's profile image
songsehwa10426

asked

Ask a question