Fibonacci Recursiv

by MariusNastasa

HTML

<h1>
  Sirul lui Fibonacci
</h1>
<input type="number" id="number">
<button onclick="initializeFor()">
Afisare for
</button>
<button onclick="initialize()">
Afisare recursiv
</button>
<hr>
<p>Rezultat</p>
<div id="result"></div>
<br>
<div id="message"></div>

JavaScript

function initializeFor() {
  var n = document.getElementById("number").value;
  forFibonacci(n);
  document.getElementById("message").innerHTML = "Apasa F12 pentru a vedea iteratiile.";
}

function initialize() {
  var n = document.getElementById("number").value;
  fibonacciRecursiv(n);
  document.getElementById("message").innerHTML = "Apasa F12 pentru a vedea iteratiile.";
}

function forFibonacci(n) {
  /*var numar = n;
     var number = 0;
    var number2 = 1; */
  if (n <= 2) {
    document.getElementById("result").innerHTML = "1";
  } else {
    /*  for (var i = 0; i <= n; i++) {
       var temp = number;
       number = number + number2;
       number2 = temp;
       console.log(number2);
     } */
    for (var number = 0, number2 = 1, numar = n; n >= 0; n--) {
      var temp = number2;
      number2 = number2 + number;
      number = temp;
      console.log(number);
    }
    document.getElementById("result").innerHTML = "Al " + numar + "-lea numar din sir este " + number;
  }
}

function fibonacciRecursiv(n) {
  var nr1, nr2;
  if (n <= 2) {
    return 1;
  } else {
    nr1 = fibonacciRecursiv(n - 1);
    nr2 = fibonacciRecursiv(n - 2);
  }
  document.getElementById("result").innerHTML = nr1;
  console.log(nr1);
  return nr1 + nr2;
}