diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2019-10-21 11:20:31 -0400 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2019-10-21 11:20:31 -0400 |
commit | 07766b1ebf6ee4c799a3fa5d8f553881a72829c6 (patch) | |
tree | aea0aaa307d35349cbdda5240439b392e2c2b491 /out.c | |
parent | 9d1960f4cd0e1a78abfecce4d5bfa4d850955852 (diff) |
del slices
Diffstat (limited to 'out.c')
-rw-r--r-- | out.c | 25 |
1 files changed, 18 insertions, 7 deletions
@@ -36,19 +36,30 @@ void puti(i64 x) { i64 factorial(i64 x) { - i64 a0_; - if ((x==0)) { - a0_ = 1; - } else { - a0_ = (x*(factorial((x-1)))); - }return a0_; + slice_ numbers; { + slice_ expr__; slice_ a0_; a0_.data = calloc(x, sizeof(i64)); a0_.n = x;expr__ = a0_;numbers = expr__;} + i64 i; { + i64 expr__; expr__ = 0;i = expr__;} + while ((i<x)) { + (((i64(*))(numbers.data))[i]) = (i+1);; + i = (i+1);; + }; + i64 product; { + i64 expr__; expr__ = 1;product = expr__;} + i = 0;; + while ((i<x)) { + product = (product*(((i64(*))(numbers.data))[i]));; + i = (i+1);; + }; + free(numbers.data); + return product; } void main__(void) { i64( a342[120]) = {0}; - (puti((factorial(20)))); + (puti((factorial(10)))); } |