aboutsummaryrefslogtreecommitdiff
path: root/entries/meghasinghania22/bash
diff options
context:
space:
mode:
authorBraxton Hall2022-10-24 03:40:13 +0000
committerGitHub2022-10-24 03:40:13 +0000
commite2dbb1327f5264080ceb87659ad3cb57b2a0042c (patch)
tree8f263f1c999d7f575b603b4d109b66ba07f698f1 /entries/meghasinghania22/bash
parent9d4f90f35e10269e64b7329460cef728bf0cd7d9 (diff)
parentf426d8a9b0b17336838b8840a4e5374f34949383 (diff)
Merge pull request #15 from meghasinghania22/main
bash: add fib function
Diffstat (limited to 'entries/meghasinghania22/bash')
-rw-r--r--entries/meghasinghania22/bash/script.sh27
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