diff options
Diffstat (limited to 'graphs/js/jestBasic/fibo.js')
| -rw-r--r-- | graphs/js/jestBasic/fibo.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/graphs/js/jestBasic/fibo.js b/graphs/js/jestBasic/fibo.js new file mode 100644 index 0000000..0a19955 --- /dev/null +++ b/graphs/js/jestBasic/fibo.js @@ -0,0 +1,29 @@ +function fibo(n) { + if (typeof n != "number" || isNaN(n)) { + return -1; + } + + if (n < 0) { + return -1; + } + + if (n === 0) { + return 0; + } + + let a = 1; + let b = 1; + let result = 1; + + for (let i = 2; i < n; i++) { + result = a + b; + b = a; + a = result; + } + + return result; +} + +module.exports = { + fibo, +}; |
