aboutsummaryrefslogtreecommitdiff
path: root/challenge-041/steven-wilson/perl5/ch-2.pl
blob: 6cba0acc5540f56336cc1732cea1d93603787a32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env perl
# Author: Steven Wilson
# Date: 2020-01-02
# Week: 041
# Task #2
# Write a script to display first 20 Leonardo Numbers. Please checkout wiki page for more information.
# For example:

# L(0) = 1
# L(1) = 1
# L(2) = L(0) + L(1) + 1 = 3
# L(3) = L(1) + L(2) + 1 = 5
# and so on.
# https://en.wikipedia.org/wiki/Leonardo_number

use strict;
use warnings;

my @leonardo_numbers = ( 1, 1 );
my $counter = 2;

while ( $counter < 20 ) {
    $leonardo_numbers[$counter] =
        $leonardo_numbers[ $counter - 1 ] +
        $leonardo_numbers[ $counter - 2 ] +
        1;
    $counter++;
}

print join " ", @leonardo_numbers, "\n";