second commit

This commit is contained in:
MortezaTavasoly 2023-10-23 05:06:00 -08:00
parent 50238a402c
commit 33e627c4ba
2 changed files with 24 additions and 12 deletions

View File

@ -1,5 +1,17 @@
const fibonacci = function() { const fibonacci = function (number) {
if (number < 0) return "OOPS";
if (number === 0) return 0;
let prev1 = 1;
let prev2 = 0;
for (let i = 2; i <= number; i++) {
let current = prev1 + prev2;
prev2 = prev1;
prev1 = current;
}
return prev1;
}; };
// Do not edit below this line // Do not edit below this line

View File

@ -1,31 +1,31 @@
const fibonacci = require('./fibonacci') const fibonacci = require("./fibonacci");
describe('fibonacci', () => { describe("fibonacci", () => {
test('4th fibonacci number is 3', () => { test("4th fibonacci number is 3", () => {
expect(fibonacci(4)).toBe(3); expect(fibonacci(4)).toBe(3);
}); });
test.skip('6th fibonacci number is 8', () => { test("6th fibonacci number is 8", () => {
expect(fibonacci(6)).toBe(8); expect(fibonacci(6)).toBe(8);
}); });
test.skip('10th fibonacci number is 55', () => { test("10th fibonacci number is 55", () => {
expect(fibonacci(10)).toBe(55); expect(fibonacci(10)).toBe(55);
}); });
test.skip('15th fibonacci number is 610', () => { test("15th fibonacci number is 610", () => {
expect(fibonacci(15)).toBe(610); expect(fibonacci(15)).toBe(610);
}); });
test.skip('25th fibonacci number is 75025', () => { test("25th fibonacci number is 75025", () => {
expect(fibonacci(25)).toBe(75025); expect(fibonacci(25)).toBe(75025);
}); });
test.skip('doesn\'t accept negatives', () => { test("doesn't accept negatives", () => {
expect(fibonacci(-25)).toBe("OOPS"); expect(fibonacci(-25)).toBe("OOPS");
}); });
test.skip('DOES accept strings', () => { test("DOES accept strings", () => {
expect(fibonacci("1")).toBe(1); expect(fibonacci("1")).toBe(1);
}); });
test.skip('DOES accept strings', () => { test("DOES accept strings", () => {
expect(fibonacci("2")).toBe(1); expect(fibonacci("2")).toBe(1);
}); });
test.skip('DOES accept strings', () => { test("DOES accept strings", () => {
expect(fibonacci("8")).toBe(21); expect(fibonacci("8")).toBe(21);
}); });
}); });