Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Study</title>
- </head>
- <body>
- <script>
- 'use strict'
- /*
- * fib(3) -> fib(3 -1) + fib(3-2) -> 1 + 1 -> 2
- *
- * fib(2) -> fib(2 -1 )+ fib(2 -2) -> 1
- * fib(1) -> 1 + fib(0) -> 0
- *
- * fib(1) -> 1
- * /
- function fib(n) {
- if (n == 0) { return 0; }
- if (n == 1) { return 1; }
- return fib(n - 1) + fib(n - 2);
- }
- function fib1(n) {
- let fib0 = 0;
- let fib1 = 1;
- let res = 0;
- if (n < 2 ) { return n; };
- for (n -= 2; n >= 0; --n) {
- res = fib0 + fib1;
- fib0 = fib1;
- fib1 = res;
- }
- return res;
- }
- function printRange(rangeA, rangeB, what) {
- let begin;
- let end;
- rangeA > rangeB ? (end = rangeA, begin = rangeB) : (end = rangeB, begin = rangeA)
- for (; begin <= end; ++begin) {
- console.log(`${begin} ==> ${what(begin)}`);
- }
- }
- {
- let beginRange = +prompt('Enter begin range', 0);
- let endRange = +prompt('Enter end range', 45);
- printRange(beginRange, endRange, fib);
- }
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement