読者です 読者をやめる 読者になる 読者になる

Problem1

euler perl


結構 http://odz.sakura.ne.jp/projecteuler/index.php?Project%20Euler 
が流行っているようなので便乗して頑張る。使用言語は基本 Perlで。

#!/usr/bin/perl
use strict;
use warnings;

print "input number >>> ";
chomp( my $num = <STDIN>);
print "sum is ", p1($num), "\n"; # 1000だと 233168

sub p1
{
  my ($limit) = @_;
  my $sum = 0;

  for my $n (1..($limit - 1)){
    $sum += $n if ($n % 3 == 0 || $n % 5 == 0);
  }

  return $sum;
}

まあ決め打ちにしたらも少し短くできそうだけど、汎用性が高いものを心がける。