Какие шаги используются в этой функции, используемой для вычисления последовательности Фибоначчи?

#javascript #loops #fibonacci

#javascript #циклы #фибоначчи

Вопрос:

 let a = 0;
let b = 1;
for (let i = 1; i <= 10; i  ) {
  var c = a   b;
  a = b;
  b = c;
  console.log(c);
}  

Итак, у меня есть этот небольшой код, который, по-видимому, работает и который выдает последовательность Фибоначчи, но я все еще не понимаю, как код выполняет свою работу, поэтому я думаю, что для понимания нужно визуальное представление с числами.

Комментарии:

1. Код просто делает именно то, что подсказывает алгоритм Фибоначчи.

Ответ №1:

Проработайте это шаг за шагом:

 let a = 0;
let b = 1;
  

Не требующее пояснений назначение переменной.

 for (let i = 1; i <= 10; i  ) {...}
  

Выполнить итерацию от 1 до 10 с i сохранением текущей итерации

 var c = a   b;
  

Сделайте переменную, c имеющей значение a b .

 a = b;
b = c;
  

Установите a в b и b в c — создает новые базовые значения для следующей итерации.

В этом примере показаны все переменные:

 let a = 0;
let b = 1;
for (let i = 1; i <= 10; i  ) {
  var c = a   b;
  a = b;
  b = c;
  console.log(`a: ${a}, b: ${b}, c: ${c}, i: ${i}`);
}