#!/usr/local/bin/perl
#$Id: processmail.pl,v 3.0 2008/03/23 17:50:50 boris Exp $
#
#
# Исходные файлы и параметры
#
use Getopt::Std;
$usage = 'processmail.pl $Revision: 3.0 $, $Date: 2008/03/23 17:50:50 $'. "\n".
"Usage: processmail.pl [-d] [-t table_file] [-o results] \n";
require 'parameters.pl';
require 'subroutines.pl';
die $usage unless getopts('t:o:d');
$DEBUG=$opt_d;
my %teams;
my @answers;
#
# Читаем старые результаты
#
if ($opt_t)
{
die "Cannot open $opt_t\n" unless open(INFILE,$opt_t);
readhash(\@answers);
close(INFILE);
}
#
# Читаем ответы команд для ВСЕХ зачётов
#
$MAXQUEST=1;
for (my $i=1; $i<=$ROUNDS; $i++) {
if ($MAXQUEST<$MAXQUEST[$i]) {
$MAXQUEST=$MAXQUEST[$i];
}
}
for (my $i=1; $i<=$ROUNDS; $i++) {
foreach my $file ( @{$FILES[$i]} ) {
open (INFILE, $file);
readmail(\%teams);
collect_answers(\%teams,\@answers);
close (INFILE);
}
}
#
# Пишем измененную таблицу в файл.
#
if ($opt_o)
{
die "Cannot open $opt_o\n" unless open(OUTFILE,">$opt_o");
select OUTFILE;
}
for ($i=1;$i<=$MAXQUEST;$i++)
{
foreach $symbol ('+','-','?')
{
dumphash(\%teams,\@answers,$i,$symbol);
}
}
print "***\n";
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>