source code for "files/pe/pe_038.pl"
return to portfolio
- #!/usr/bin/perl
- use strict;
- use warnings;
- use euler;
- my ($k, $largest);
- my ($str) = '';
- $largest = 0;
- # it must be a 4 digit number,
- # because 10000*2 . 10000*3 > 9...
- # and so on for everything with length > 4
- # (987654321 is the largest for n >= 1 obviously... but is not legit)
- for (1000..9999) {
- for ($k=1; length $str < 9; $k++) {
- $str .= $_ * $k;
- }
- if (int $str > $largest && euler::is_pandigital($str)) {
- $largest = int $str;
- print $largest, "\n";
- }
- $str = '';
- }
- print "\n$largest";