source code for "files/pe/pe_001.pl"
return to portfolio
- #!/usr/bin/perl
- # Matt Owen
- # Project Euler #1
- # 1+2+3+...+n = n*(n+1)/2 solves this
- use POSIX qw/ceil floor/;
- sub triangle
- {
- my ($n, @rest) = @_;
- $n = floor($n);
- return $n*($n+1)/2;
- }
- ($n3, $n5, $n15) = (floor(1000/3), 1000/5-1, floor(1000/15));
- $s = 3*triangle($n3)+5*triangle($n5)-15*triangle($n15);
- print "project euler #1 answer is...\n\t", $s;