summaryrefslogtreecommitdiff
path: root/perl/p1.pl
blob: e13aa31841c9c428a1682401d3004f7343c501d1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env perl

use strict;
use warnings;
use List::Util qw(reduce);

# Functional
print (reduce { $a + $b } (grep { $_ % 3 == 0 || $_ % 5 == 0 } 1..999));
print "\n";

# Imperative
my $sum;
foreach my $i (1..999) {
	if ($i % 3 == 0 || $i % 5 == 0) {
		$sum += $i;
	}
}
print "$sum\n";