diff options
author | Megha Singhania | 2022-10-24 03:29:52 +0000 |
---|---|---|
committer | Megha Singhania | 2022-10-24 03:29:52 +0000 |
commit | f426d8a9b0b17336838b8840a4e5374f34949383 (patch) | |
tree | c195987d0f8d65241893bfcd6ab9956fdd3407f6 | |
parent | d0208871d8c9cf86541b56afe6b830c5a20eb2c2 (diff) |
bash: add fib function
-rw-r--r-- | entries/meghasinghania22/bash/script.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/entries/meghasinghania22/bash/script.sh b/entries/meghasinghania22/bash/script.sh new file mode 100644 index 0000000..0cbba4d --- /dev/null +++ b/entries/meghasinghania22/bash/script.sh @@ -0,0 +1,27 @@ +#!/bin/bash +int_regex='^[0-9]+$' +function fib(){ + if [ "$1" -le 1 ]; then + echo $1 + else + echo $[`fib $[$1 - 1]` + `fib $[$1 - 2]` ] + fi +} + +function main(){ + echo -n "Enter a whole number: " + read num + + if [ -z "$num" ]; then + echo "Uh oh! Argument required!" + elif ! [[ "$num" =~ $int_regex ]]; then + echo "Uh oh! Argument must be a number :|" + elif [ "$num" -lt 0 ]; then + echo "Uh oh! Argument must be a whole number :|" + else + fib $num + fi + +} + +main
\ No newline at end of file |