user
*Leonardo numbers*   are also known as the   *Leonardo series*.

The   **Leonardo numbers**   are a sequence of numbers defined by:

```
       L(0) = 1                                          [1st equation]  
       L(1) = 1                                          [2nd equation]  
       L(n) = L(n-1)  +    L(n-2)   +  1                 [3rd equation]  
                    ─── also ───
       L(n) =      2  *  Fib(n+1)   -  1                 [4th equation]  

```

:   :   :   :   where the   **+ 1**   will herein be known as the   *add*   number.
            :   where the   **FIB**   is the   Fibonacci numbers.

This task will be using the 3rd equation (above) to calculate the Leonardo numbers.

Edsger W. Dijkstra   used   Leonardo numbers   as an integral part of
his   smoothsort   algorithm.

The first few Leonardo numbers are:

```
    1   1   3   5   9   15   25   41   67   109   177   287   465   753   1219   1973   3193   5167   8361  ··· 

```

Task
:   :   * show the 1st   **25**   Leonardo numbers, starting at **L(0)**.
        * allow the first two Leonardo numbers to be specified   [for **L(0)** and **L(1)**].
        * allow the   *add*   number to be specified   (**1** is the default).
        * show the 1st   **25**   Leonardo numbers, specifying **0** and **1** for **L(0)** and **L(1)**, and **0** for the *add* number.

(The last task requirement will produce the Fibonacci numbers.)

Show all output here on this page.

Related tasks

* Fibonacci number
* Fibonacci n-step number sequences

See also

* Wikipedia, Leonardo numbers
* Wikipedia, Fibonacci numbers
* OEIS Leonardo numbers
assistant
(formerly Perl 6)

```
sub 𝑳 ( $𝑳0 = 1, $𝑳1 = 1, $𝑳add = 1 ) { $𝑳0, $𝑳1, { $^n2 + $^n1 + $𝑳add } ... * }

# Part 1
say "The first 25 Leonardo numbers:";
put 𝑳()[^25];

# Part 2
say "\nThe first 25 numbers using 𝑳0 of 0, 𝑳1 of 1, and adder of 0:";
put 𝑳( 0, 1, 0 )[^25];

```

Output:

```
The first 25 Leonardo numbers:
1 1 3 5 9 15 25 41 67 109 177 287 465 753 1219 1973 3193 5167 8361 13529 21891 35421 57313 92735 150049

The first 25 numbers using 𝑳0 of 0, 𝑳1 of 1, and adder of 0:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368
```