codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
/* Factorial of a number like 50 */ #include <cmath> #include <iostream> using namespace std; int main() { unsigned int nd, nz; unsigned char *ca; unsigned int j, n=50, q, temp; int i; double p; p = 0.0; for(j = 2; j <= n; j++) { p += log10((double)j); } nd = (int)p + 1; ca = new unsigned char[nd+1]; if (!ca) { cout << "Could not allocate memory!!!"; exit(0); } for (i = 1; (unsigned)i < nd; i++) { ca[i] = 0; } ca[0] = 1; p = 0.0; for (j = 2; j <= n; j++) { p += log10((double)j); nz = (int)p + 1; q = 0; for (i = 0;(unsigned) i <= nz; i++) { temp = (ca[i] * j) + q; q = (temp / 10); ca[i] = (char)(temp % 10); } } cout << "\nThe Factorial of " << n << " is: "; for( i = nd - 1; i >= 0; i--) { cout << (int)ca[i]; } // delete []ca; return 0; }
Private
[
?
]
Run code
Submit