#include <iostream>
using namespace std;
long long Factorial(int n)
{
long long num = n;
for (int i = 0; i < n; i++)
{
num *= (n - i);
}
return (num/n);
}
int main()
{
int n;
n<=20;
cin >> n;
cout << Factorial(n);
}
자료구조 팩토리얼 이렇게 코드 짰는데
19까지 잘되는데 20만 이상한 숫자가 나와요 왜 그런거죠?ㅜ
나오는 숫자가 커서 자료형도 long long으로 바꿨는데 이 자료형의 범위가 20!의 값을 초과하지 않는것같은데 20팩토리얼값이 음수로 나오네요..ㅜ