n!의 n에 해당하는 수를 입력하면 팩토리얼 계산 결과를 확인할 수 있습니다.
목차:
팩토리얼 계산기 설명
우리말로는 계승(階乘)이라고 하는 팩토리얼(factorial)은 다음과 같이 정의 됩니다.
n! = n × (n-1) × (n-2) × (n-3) × … × 3 × 2 × 1
n에 해당하는 수 (예를 들어 5!의 경우 5를 ) n을 입력하는 칸에 입력하면 팩토리얼 계산 결과가 자동으로 표시 됩니다.
팩토리얼은 숫자가 조금만 커져도 계산 결과가 급격하게 증가합니다.
본 팩토리얼 계산기는 왠만한 숫자의 팩토리얼도 계산할 수 있지만, 큰 수에 대해서는 계산 결과 노출이 느리게 표시될 수 있습니다.
- 21!까지는 실제 수치를 표시합니다.
- 22! ~ 170! 까지는 계산 결과를 과학적 표기법 (예:1.23456e+21)과 실제 수치, 두 가지로 표시하고,
- 171! 이후부터는 실제 수치만 표시됩니다.
본 팩토리얼 계산기의 계산 한계가 따로 있는 것은 아니지만, 메모리 한계가 있을 수 있으므로 가능하면 4자리 수 이상은 입력하지 않으시기를 바랍니다. 또한 171! 이후부터는 최신 버전의 파이어폭스, 크롬, 사파리가 아닌 경우 계산 결과가 제대로 표시 되지 않을 수 있습니다.
팩토리얼 계산법
자신의 수에서 1계단 씩 내려가면서 1씩 줄여 마침내 1까지 곱한다 해서 팩토리얼을 우리말로는 계승(階乘)이라고 합니다.
따라서 팩토리얼 공식은 아래와 같이 표현할 수 있습니다. 어떤 수를 일반화 하여 n이라 하면,
n! = n × (n-1) × (n-2) × (n-3) × … × 3 × 2 × 1
팩토리얼은 1부터 자신의 수까지 순서대로 1씩 늘려가면서 곱한 값이라고 정의할 수도 있습니다. 이 경우 3! = 1×2×3 = 6, 4! = 1×2×3×4 = 24 입니다.
1부터 위로 올라가면서 곱하든, 자신의 수에서 아래로 내려가면서 곱하든 결과는 같습니다. (곱셈에는 교환 법칙이 성립하니까요.)
따라서 팩토리얼을 어떻게 기억할 것인지는 개인의 선택사항입니다. 1부터 곱하든, 아니면 n부터 시작하여 1까지 곱하든, 편한 대로 기억하면 됩니다.
다만, 대부분의 경우 자신의 수에서 시작하여 1씩 줄여 가면서 1까지 곱하는 것으로 표현하므로 n부터 시작하여 1씩 줄여 나가면서 1까지 곱하는 것이라고 기억하는 것이 좋지 않을까 생각됩니다.
팩토리얼의 특징
팩토리얼은 자신의 수에서부터 그 아래로 1까지(또는 1부터 시작하여 자신의 수까지) 곱하다 보니, 금방 그 결과 값이 커집니다.
예를 들어 5!은 120, 6!은 720 인데, 7!만 되어도 결과 값이 5,040으로 급하게 커집니다. 10!은 3,628,800이지만 20!은 2,432,902,008,176,640,000로 240경을 넘긴 숫자가 되고 맙니다.
금방 결과 값이 커지다 보니 계산기로 15!을 계산해도 1.307674368e12(1.307674368×1012)처럼 과학적 표기법을 써서 결과 값을 표시해 주곤 합니다.
팩토리얼의 특징으로 기억해 둘 만한 또 다른 특징은 n! = n × (n-1)!과 같다는 것입니다. 팩토리얼 공식을 떠올리면 이는 n × (n-1) × (n-2) × (n-3) × … × 3 × 2 × 1을 다르게 표현한 것에 불과하다는 것을 알 수 있을 것입니다.
(n-1) × (n-2) × (n-3) × … × 3 × 2 × 1은 (n-1)! 이므로 n!은 (n-1)!에 n을 곱한 것과 같아 집니다. 이 특징은 별거 아닌 것 같지만, 이해해 두면 팩토리얼 관련 문제를 풀거나 아래 단락의 0!이 1인 이유를 이해하거나 혹 프로그래밍을 하는 경우에 도움이 됩니다.
마지막으로 팩토리얼은 양의 정수만 다룬다는 특징도 기억해 두시기 바랍니다. 아, 0!로 가끔 언급 되긴 하니까 정확하게는 0과 양의 정수만 다룬다고 해야겠네요. 그래도 0!을 다루는 경우는 거의 없습니다. 대략 양의 정수, 즉 자연수를 다루는 것이라고 기억하면 되겠습니다.
0!이 1인 이유
‘0!은 그냥 1이라고 합의를 보자!’라고 했기 때문에 1이라고 할 수도 있습니다. 다른 식으로 말하면 ‘복잡하게 그 이유를 생각할 것 없이 0!은 1이다.’라고 기억해도 된다는 말씀입니다.
굳이 0!이 1인 이유를 따져 보자면 다음과 같이 생각할 수 있습니다.
- 앞에서 n!은 n×(n-1)!과 같다고 이해했으므로,
- (n-1)! 은 n!을 n으로 나눈 것과 같습니다.
- 예를 들어, 3!은 4!÷4 입니다.
- 같은 방법으로, 2! 은 3!÷3 이겠지요,
- 당연히 1!은 2!÷2가 됩니다.
- 그렇다면, 0!은 1!÷1=1 이어야 합니다. ∴ 0! = 1.
음의 정수 팩토리얼을 계산할 수 없는 이유
앞에서 팩토리얼은 대개 양의 정수(자연수)를 다룬다고 했습니다. 즉, 음의 정수에 대해서는 팩토리얼을 계산할 수 없다는 이야기 였습니다.
왜 그럴까요?
0!이 1이 되어야 하는 이유를 유추했던 것과 같은 방법으로 그 이유를 유추할 수 있습니다.
2! = 3!÷3 이고, 1! = 2!÷2, 0! = 1!÷1 이므로, 0에서 1이 줄어든 -1!은 0!÷0 이어야 합니다. 그러나 수학에서 0으로 나누는 것은 정의 되지 않죠. 따라서 -1!은 계산할 수 없습니다.
-1!을 계산할 수 없으니, -2!= -1!÷1도 계산할 수 없고, 다른 음의 정수도 계산할 수 없게 됩니다.
팩토리얼의 쓰임새
수학에서 팩토리얼은 경우의 수를 세는데 주로 쓰입니다.
예를 들어, 3개의 인형(파란색 인형, 노란색 인형, 빨간색 인형)을 일렬로 배열할 때 배열 할 수 있는 총 경우의 수를 계산하는데 팩토리얼이 이용됩니다.
즉, 첫 번째 자리에는 세울 인형은 3가지 경우의 수가 있고, 두 번째 자리에 세울 인형은 첫 번째로 세운 인형을 뺀 2가지 경우의 수가 있고 마지막 자리에 세울 인형은 첫 번째와 두 번째 자리에 세운 인형을 뺀 1가지 경우의 수만 있으므로 총 경우의 수는 곱의 법칙을 써서 3×2×1=6(=3!) 가지라고 계산할 수 있습니다.
경우의 수를 세는 방법에는 순열도 있고 조합도 있으니 팩토리얼은 순열 계산이나 조합 계산을 하는데도 필수적으로 이용됩니다.