diff options
| author | Abigail <abigail@abigail.be> | 2021-10-26 18:27:30 +0200 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-10-26 18:27:30 +0200 |
| commit | 0b59fc36f4c1f832e41978cbab29475af95ffb10 (patch) | |
| tree | 5bc82283928ebe5fb9ceaf40854daceb3582bf4e /challenge-136/abigail/bash | |
| parent | 4894bf4150e87a883dcc94d1172df4feb4c5e45b (diff) | |
| download | perlweeklychallenge-club-0b59fc36f4c1f832e41978cbab29475af95ffb10.tar.gz perlweeklychallenge-club-0b59fc36f4c1f832e41978cbab29475af95ffb10.tar.bz2 perlweeklychallenge-club-0b59fc36f4c1f832e41978cbab29475af95ffb10.zip | |
Bash solution for week 136, part 2
Diffstat (limited to 'challenge-136/abigail/bash')
| -rw-r--r-- | challenge-136/abigail/bash/ch-2.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/challenge-136/abigail/bash/ch-2.sh b/challenge-136/abigail/bash/ch-2.sh new file mode 100644 index 0000000000..1a291d7d18 --- /dev/null +++ b/challenge-136/abigail/bash/ch-2.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +# +# See ../README.md +# + +# +# Run as: bash ch-2.sh < input-file +# + +set -f + +function count () { + local target=$1 + local this_fib=${2:-1} + local prev_fib=${3:-1} + + if ((target < this_fib)) + then count=0 + elif ((target == this_fib)) + then count=1 + else count $((target - this_fib)) $((this_fib + prev_fib)) $this_fib + local sum=$count + count $target $((this_fib + prev_fib)) $this_fib + count=$((count + sum)) + fi +} + +while read target +do count $target + echo $count +done |
