#!/usr/bin/perl -w use strict; unshift(@::ARGV, 'registration.html') if $#::ARGV == -1; if (-t STDOUT) { open(OUT, '>ranked.html') || die; select(OUT); } my @gP; # read and parse input file while (<>) { if (/^
$/../^<\/pre>$/) {
next unless /^[A-Z]/ && !/^Name/;
my ($name, $club, $p1996, $qual, $regd, $mem, $ratings)
= unpack('A21 A13 A5 A5 A4 A4 A*', $_);
$ratings =~ s/[- ]+$//;
#CHI my (@ratings, $chicago);
#CHI (@ratings[0..2], $chicago) = split(/\s+/, $ratings);
#CHI my $isEst = 0;
#CHI if (defined $chicago) { # player shows Chicago NSC estimate
#CHI @ratings = sort {$b<=>$a} @ratings;
#CHI if ($chicago > $ratings[0]) {
#CHI unshift(@ratings, $chicago);
#CHI $isEst = 1;
#CHI }
#CHI }
#CHI else { # no Chicago estimate
#CHI @ratings = sort {$b<=>$a} (@ratings);
#CHI }
my @ratings = sort {$b<=>$a} split(/\s+/, $ratings);
push(@gP,
#CHI [$name, $club, $p1996, $qual, $regd, $mem, $ratings, $ratings[0], $isEst]);
[$name, $club, $p1996, $qual, $regd, $mem, $ratings, $ratings[0]]);
}
}
my ($i, $p);
my %gkSortValue = ('yes', 4, 'gm?', 2, 'ip', 3, 'no', 1, 'n/a', 0, 'NO', 0);
$i = 1;
print "\n";
print "\n";
print "1998 CNSC Qualification Standings \n";
print "\n";
print "\n";
print "\n";
print "1998 CNSC Qualification Standings
\n";
print "\n";
print "This automatically generated list shows who has qualified and\n";
print "who has registered to play in the 1998 CNSC.\n";
print "E-mailed";
print " corrections welcome.\n";
print "\n";
print "
Legend
\n";
print "\n";
print "\n";
printf "%-3s %-21s %-13s %-4s %-4s %-4s\n",
'Rnk', 'Name', 'Club', 'Qual', 'Regd', 'Rtng';
print "\n";
for $p (sort {
$gkSortValue{$b->[4]} <=> $gkSortValue{$a->[4]} ||
$gkSortValue{$b->[3]} <=> $gkSortValue{$a->[3]} ||
$b->[7] <=> $a->[7] ||
$b->[1] cmp $a->[1] ||
$b->[0] cmp $a->[0]
} @gP) {
print "\n" if $i == 51;
printf "%02d. %-21s %-13s %4s %4s %4d%s\n", $i++, @{$p}[0,1,3,4,7],
#CHI $p->[8] ? '?' :
'';
}
print "\n";
print "\n";
print "\n";
0;