JSFiddle - React, Tailwind, and code Playground

by k_rma

JavaScript

function fib(x)
{
    function iter(count, a, b)
    {
        if (count == x) return a
        return iter(count + 1, b, a + b)
    }
return iter(1, 1, 1)
}

function tailfib(x)
{
    if (x == 1 || x == 2) return 1
    
    var a = 1
    var b = 1
    var c = 0
    for(var count = 0; count < x-3; count++)
    {
        c = a
        a = b
        b = b + c      
    }
    return a + b
}

function recfib(x)
{
    if (x == 1 || x == 2) return 1
    return recfib(x - 1) + recfib (x - 2)
}

function printstuff(count,proc)
{
    for(var i = 0; i < count; i++)
    {
        document.write(proc(i + 1)+" ")
    }
}

function newline()
{
    return document.write("<br>")
}

printstuff(5,tailfib)
newline()
newline()
printstuff(5,recfib)
newline()
newline()
printstuff(5,fib)