$|=1; use integer; my @e=(1)x450; #represents sum{$e[$i]/$i!} for(1..1000){ for(reverse 1..$#e){ #Normalize $e[$_-1] += $e[$_]/$_; $e[$_] %= $_; } print $e[0]; $e[0] = 0; for( @e ){ $_ *= 10; } #shift decimal point }