���䡣��ƨ���Ƥ�����

2009-03-14 - �����ΤϤƤ�����
�߼�Ψ3.141592653589793�Ĥ���ǡ��ǽ�ˡ�"������ʬ��"�ȸ��ʤ��������פ��ФƤ���Ȥ����ϡ��������ʲ������ܡ�

�ޤ����Կ�ȿ�ͤǽ񤤤�������

use strict;
use warnings;
use Time::Local;
use Math::BigFloat lib => 'GMP';

my $maxdigits = shift || 1000;
my $pi = Math::BigFloat->bpi($maxdigits) . '';
$pi =~ s/3\./3/;

for my $d ( 0 .. $maxdigits - 10) {
    my ( $mo, $dd, $hh, $mm, $ss ) =
      map { substr( $pi, $d + $_ * 2, 2 ) } ( 0 .. 4 );
    eval { my $time = timelocal( $ss, $mm, $hh, $dd, $mo - 1, 100 ); };
    next if $@;
    print "$mo$dd $hh:$mm:$ss \@$d\n";
}

lib => 'GMP'��ʤ���Math::BigInt::GMP���פ� Perl Core �ΤߤǼ¹Բ�ǽ�Ȥʤ뤬������ʤ����Ȥ����֤�Ȼ��֤������롣

���ϡ�����ɽ����Ȥä�������

use strict;
use warnings;
use Regexp::Assemble;
use Math::BigFloat lib => 'GMP';

my $maxdigits = shift || 1000;
my $pi = Math::BigFloat->bpi($maxdigits) . '';
$pi =~ s/3\./3/;

my $re_date = do {
    my $ra = Regexp::Assemble->new;
    for my $m ( 1 .. 12 ) {
	my $ld = (qw/31 29 31 30 31 30 31 31 30 31 30 31/)[ $m - 1 ];
        for my $d ( 1 .. $ld ) {
            $ra->add( sprintf "%02d%02d", $m, $d );
        }
    }
    $ra->re;
};
my $re_hh = do {
    my $ra = Regexp::Assemble->new;
    for my $h ( 0 .. 23 ) {
        $ra->add( sprintf "%02d", $h );
    }
    $ra->re;
};
my $re_mm = do {
    my $ra = Regexp::Assemble->new;
    for my $h ( 0 .. 59 ) {
        $ra->add( sprintf "%02d", $h );
    }
    $ra->re;
};
my $re_ss = $re_mm;
my $re_piday = qr/($re_date)($re_hh)($re_mm)($re_ss)/;
warn $re_piday, "\n";
while ( $pi =~ /$re_piday/g ) {
    print "$1 $2:$3:$4 @", pos($pi) - 10, "\n";
}

Regexp::Assemble��ȤäƳڤ򤷤Ƥ��롣

�Ǹ�ˡ�1000�������ˤɤ���������աפ����äƤ��뤫��Ĵ�٤Ƥߤ롣��������1000�����׻�������ΤϤ��Ĥ��Τǡ����������ΤȤ��������Ҽڤ��뤳�Ȥˤ��롣�嵭�����ɤ�$pi�������ʲ��Τ褦�ˤ����OK����

use LWP::Simple;

my $pi = 3
    . get('ftp://pi.super-computing.org/pub/pi200m/pi200m.ascii.01of20');
$pi =~ s/\D//g;
% perl piday-10m.pl | wc
   27069   81207  619577

�����䡹��³���Ƥ����С������򤹤٤ơ�hyukiɽ���ס����ʤ����07��26�� 02:49:14�פǤϤʤ�297�ȵ��Ҥ��뤳�Ȥ��Բ�ǽ�ǤϤʤ������˸����롣1000������Ф�27069�������տ��פˤʤ��Ψ��0.2%�Ȥ���ȡ�31,622,400��������տ����������Ĥ���Τˤϡ��Ϥ��ᤫ�� 6,324,480,000 ��ۤɤΦФ������­�ꤽ�����Ȳ�¬�Ǥ��뤬����Ϥ����ˡ�

Dan the Transcendental Perl Monger @5787597