알고리즘
[Java]팩토리얼 - 재귀 함수
코북
2022. 1. 24. 21:40
안녕하세요 코북입니다. 오늘은 팩토리얼 문제를 풀었는데, 반복문을 통해 푸는 방법과 재귀 함수를 사용해서 푸는 방법이 있었습니다.
반복문 풀이
public class Java08 {
public static void main(String[] agrs) {
Scanner sc = new Scanner(System.in);
System.out.print("입력 : ");
int num = sc.nextInt();
int fact = 1; //곱해야 하므로 기본값을 1로 설정
for(int i=2; i<=num; i++)
{
fact *= i;
}
System.out.println("출력 : "+ fact);
}
}
입력한 값 만큼 반복하여 대입 연산자를 통해 값을 곱해줍니다.
재귀 함수 풀이
public class Java08_2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("입력 : ");
int num = sc.nextInt();
System.out.println("출력 : " + fact(num));
}
static int fact(int n) {
if(n<=1)
{
return n;
}
else
{
return fact(n-1)*n;
}
}
}
함수 안에서 자기 자신을 다시 불러서 함수가 실행됩니다.
배운 점
재귀함수를 통한 풀이를 처음 접해봤는데, 재귀 함수에 대한 공부가 좀 더 필요할 것 같다.