팩토리얼

2022. 4. 24. 00:19코딩 테스트(JAVA)/인프런 문제풀이

팩토리얼 자연수 N이 입력되면 N!를 구하는 프로그램을 작성하세요.

예를 들어 5! = 5*4*3*2*1=120입니다.

 

▣ 입력설명

첫 번째 줄에 자연수 N(1<=N<=100)이 주어집니다.

 

▣ 출력설명

첫 번째 줄에 N팩토리얼 값을 출력합니다.

 

▣ 입력예제 1

5

▣ 출력예제 1

120

 


 

팩토리얼 구현 문제 역시 재귀 함수로 간단하게 구현 가능합니다. 재귀 함수 관련 포스팅을 먼저 보고 오시면 이해가 더 빠를 것 같습니다.

재귀함수(스택프레임)

 

재귀함수(스택프레임)

재귀 함수 자연수 N이 입력되면 재귀 함수를 이용하여 1부터 N까지를 출력하는 프로그램을 작성하세요. ▣ 입력 설명 첫 번째 줄은 정수 N(3 <=N <=10)이 입력된다. ▣ 출력설명 첫째 줄에 출력한다.

lealea.tistory.com

 

그림과 코드를 번갈아보시면서 이해 후 암기하면 좋을 것 같습니다. 

 

재귀 함수 - if ~ else문을 사용합니다.

 

코드 구현

public class Factorial {
	public int DFS(int n) {
		if(n == 1) return 1;
		else return n*DFS(n-1);
	}

	public static void main(String[] args) {
		Factorial T = new Factorial();
		System.out.println(T.DFS(5));

	}

}

 

그림 설명