Write a program to find factorial of a number. Input has to be given at load time.
#include<stdio.h> #include<stdlib.h> unsigned long long int factorial(int); int main(int argc,char**argv) { unsigned long long int fact; int n; if(argc != 2) { printf("Invalid Input\nUsage:./a.out positive number\n"); return 0; } n = atoi(argv[1]); if(n < 0) { printf("Invalid input\n"); return 0; } fact = factorial(n); printf("factorial of %d is %llu\n",n,fact); return 0; } unsigned long long int factorial(int n) { unsigned long long int f = 1; for(;n;n--) { f = f * n; } return f; }
Output:
./a.out 5 factorial of 5 is 120
./a.out -4 Invalid input