#!/usr/bin/perl use strict; use warnings; my $number = 1; my $limit = 20; my @list_of_nums; while ($number < $limit) { push @list_of_nums, $number; $number = $number + $list_of_nums[-2]; } foreach my $item (@list_of_nums) { if (odd($item) eq 'Odd') { print "$item is Odd\n"; } else { print "$item is Even\n"; } } sub even { my $num = shift @_; if ($num == 1) { return 'Even'; } else { return odd(--$num); } } sub odd { my $num = shift @_; if ($num == 1) { return 'Odd'; } else { return even(--$num); } }