view final_pre/src/factrial.cbc @ 7:0e8b9646d43f

add final_pre
author e155702
date Sun, 17 Feb 2019 05:39:59 +0900
parents
children
line wrap: on
line source

__code print_factorial(int prod)
{
  printf("factorial = %d\n", prod);
  exit(0);
}

__code factorial0(int prod, int x)
{
  if (x >= 1) {
    goto factorial0(prod*x, x-1);
  } else {
    goto print_factorial(prod);
  }

}

__code factorial(int x)
{
  goto factorial0(1, x);
}

int main(int argc, char **argv)
{
  int i;
  i = atoi(argv[1]);

  goto factorial(i);
}