Guest User

Untitled

a guest
Jun 22nd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdint.h>
  4. #include <string.h>
  5.  
  6. uint64_t factorial(uint64_t n)
  7. {
  8. uint64_t ret = 1;
  9. uint64_t i;
  10.  
  11. for (i = 1; i < n; i++) {
  12. ret *= i;
  13.  
  14. while (ret % 10 == 0)
  15. ret /= 10;
  16.  
  17. ret %= 1000000;
  18. }
  19.  
  20. return ret % 100000;
  21. }
  22.  
  23. int main(int argc, char *argv[])
  24. {
  25. int i;
  26. uint64_t ret, val;
  27.  
  28. for (i = 1; i < argc; i++) {
  29. val = strtoull(argv[i], &argv[i]+strlen(argv[i]), 10);
  30.  
  31. ret = factorial(val);
  32.  
  33. printf("%12llu: %llu\n", val, ret);
  34. }
  35. }
Add Comment
Please, Sign In to add comment