#include<stdio.h>

int input();//キーボードからの入力を受け取って返す関数
int factorial_n(int);//階乗値を計算する関数

int main(int argc,char *argv[]){
  int num;//キーボードからの入力値格納
  long pow;//階乗値格納
  printf("Please Enter Data! (data size :1-100)\n");
  num=input();
  pow=factorial_n((long)num);
  
  printf("Factorial: %d\n",pow);
  return(1);
}

int input(){
  char str[5];
  int num;

  fgets(str,256,stdin);
  num=atoi(str);
  if(num<0 || num>100){
    printf("data size: 1-100\n");
    exit(1);
  }
  return num;
}

int factorial_n(int num){
  if(num==0){
    return(1);
  }
  else{
    return(num*factorial_n(num-1));
  }
}

