diff options
| author | Abigail <abigail@abigail.be> | 2021-10-27 10:19:09 +0200 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-10-27 10:19:09 +0200 |
| commit | 7c042d056b6e1ec4813d7919ffcb5216e45e6c34 (patch) | |
| tree | 68c6f66aa3f2f1db99145d5790dcb82ced8cef18 | |
| parent | 5c2c896b413eeb0a1311eccfdd6d884c7e6d9834 (diff) | |
| download | perlweeklychallenge-club-7c042d056b6e1ec4813d7919ffcb5216e45e6c34.tar.gz perlweeklychallenge-club-7c042d056b6e1ec4813d7919ffcb5216e45e6c34.tar.bz2 perlweeklychallenge-club-7c042d056b6e1ec4813d7919ffcb5216e45e6c34.zip | |
We want a single argument wrapper function
| -rw-r--r-- | challenge-136/abigail/pascal/ch-2.p | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/challenge-136/abigail/pascal/ch-2.p b/challenge-136/abigail/pascal/ch-2.p index 6515b4e5ca..30d4539a6a 100644 --- a/challenge-136/abigail/pascal/ch-2.p +++ b/challenge-136/abigail/pascal/ch-2.p @@ -8,12 +8,17 @@ Program XXX; (* Run as: fpc -och-2.out ch-2.p; ./ch-2.out < input-file *) (* *) -function count (target, this_fib, prev_fib: integer): integer; +function _count (target, this_fib, prev_fib: integer): integer; begin - if target < this_fib then count := 0 - else if target = this_fib then count := 1 - else count := count (target - this_fib, this_fib + prev_fib, this_fib) + - count (target, this_fib + prev_fib, this_fib); + if target < this_fib then _count := 0 + else if target = this_fib then _count := 1 + else _count := _count (target - this_fib, this_fib + prev_fib, this_fib) + + _count (target, this_fib + prev_fib, this_fib) + end; + +function count (target: integer): integer; + begin + count := _count (target, 1, 1); end; var @@ -22,6 +27,6 @@ var begin while (not eof) do begin readln (n); - writeln (count (n, 1, 1)); + writeln (count (n)); end end. |
