File:  [Local Repository] / processmail / processmail.pl
Revision 2.3: download - view: text, annotated - select for diffs - revision graph
Tue Feb 15 19:27:51 2005 UTC (19 years, 3 months ago) by boris
CVS tags: Version_3
Started to move to the new scheme

#!/usr/local/bin/perl
#$Id: processmail.pl,v 2.3 2005/02/15 19:27:51 boris Exp $
#
#
# Исходные файлы и параметры
#

    use Getopt::Std; 

$usage = 'processmail.pl $Revision: 2.3 $, $Date: 2005/02/15 19:27:51 $'. "\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 (split /\s+/, $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>