Mercurial > hg > Papers > 2019 > oshiro-thesis
diff 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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/final_pre/src/factrial.cbc Sun Feb 17 05:39:59 2019 +0900 @@ -0,0 +1,29 @@ +__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); +} +