Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdint.h>
- #include <string.h>
- uint64_t factorial(uint64_t n)
- {
- uint64_t ret = 1;
- uint64_t i;
- for (i = 1; i < n; i++) {
- ret *= i;
- while (ret % 10 == 0)
- ret /= 10;
- ret %= 1000000;
- }
- return ret % 100000;
- }
- int main(int argc, char *argv[])
- {
- int i;
- uint64_t ret, val;
- for (i = 1; i < argc; i++) {
- val = strtoull(argv[i], &argv[i]+strlen(argv[i]), 10);
- ret = factorial(val);
- printf("%12llu: %llu\n", val, ret);
- }
- }
Add Comment
Please, Sign In to add comment