From 184137def0d6f303f8c98bd4ad136d7891cfee63 Mon Sep 17 00:00:00 2001 From: gulsherahmad <34216285+gulsherahmad@users.noreply.github.com> Date: Thu, 31 Oct 2019 01:17:57 +0530 Subject: [PATCH] Program to get factorial of any integer. It works well for integer greater than 20. --- .../Maths/factorial/FactorialBigIntegers.cpp | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Algorithms/Maths/factorial/FactorialBigIntegers.cpp diff --git a/Algorithms/Maths/factorial/FactorialBigIntegers.cpp b/Algorithms/Maths/factorial/FactorialBigIntegers.cpp new file mode 100644 index 00000000..444b54e8 --- /dev/null +++ b/Algorithms/Maths/factorial/FactorialBigIntegers.cpp @@ -0,0 +1,40 @@ +#include +#define MAX 500 +using namespace std; +int multiply(int x, int res[], int res_size); +void extraLongFactorials(int n) { + int res[MAX]; + res[0] = 1; + int res_size = 1; + for (int x=2; x<=n; x++) + res_size = multiply(x, res, res_size); + for (int i=res_size-1; i>=0; i--) + cout << res[i]; +} +int multiply(int x, int res[], int res_size) +{ + int carry = 0; + for (int i=0; i> n; + cin.ignore(numeric_limits::max(), '\n'); + extraLongFactorials(n); + return 0; +} +