8000 Finished fibonacci exercise w/ recursive solution · xinding33/javascript-exercises@1b3b3f0 · GitHub
[go: up one dir, main page]

65EE
Skip to content

Commit 1b3b3f0

Browse files
committed
Finished fibonacci exercise w/ recursive solution
1 parent 640d655 commit 1b3b3f0

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

fibonacci/fibonacci.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
1-
const fibonacci = function() {
1+
const fibonacci = function(n) {
2+
let nth = n;
3+
if (typeof(nth) === "string") {
4+
nth = parseInt(nth);
5+
}
26

7+
if (nth < 0) {
8+
return "OOPS";
9+
}
10+
else {
11+
return (nth < 3 ? 1 : fibonacci(nth - 1) + fibonacci(nth - 2))
12+
}
313
}
414

5-
module.exports = fibonacci
15+
module.exports = fibonacci

fibonacci/fibonacci.spec.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,28 +4,28 @@ describe('fibonacci', function() {
44
it('works', function() {
55
expect(fibonacci(4)).toEqual(3);
66
});
7-
xit('works', function() {
7+
it('works', function() {
88
expect(fibonacci(6)).toEqual(8);
99
});
10-
xit('works', function() {
10+
it('works', function() {
1111
expect(fibonacci(10)).toEqual(55);
1212
});
13-
xit('works', function() {
13+
it('works', function() {
1414
expect(fibonacci(15)).toEqual(610);
1515
});
16-
xit('works', function() {
16+
it('works', function() {
1717
expect(fibonacci(25)).toEqual(75025);
1818
});
19-
xit('doesn\'t accept negatives', function() {
19+
it('doesn\'t accept negatives', function() {
2020
expect(fibonacci(-25)).toEqual("OOPS");
2121
});
22-
xit('DOES accept strings', function() {
22+
it('DOES accept strings', function() {
2323
expect(fibonacci("1")).toEqual(1);
2424
});
25-
xit('DOES accept strings', function() {
25+
it('DOES accept strings', function() {
2626
expect(fibonacci("2")).toEqual(1);
2727
});
28-
xit('DOES accept strings', function() {
28+
it('DOES accept strings', function() {
2929
expect(fibonacci("8")).toEqual(21);
3030
});
3131
});

0 commit comments

Comments
 (0)
0