Diff for /processmail/processmail.pl between versions 3.3 and 3.0

version 3.3, 2013/10/30 19:28:30 version 3.0, 2008/03/23 17:50:50
Line 1 Line 1
 #!/usr/bin/perl  #!/usr/local/bin/perl
 #$Id$  #$Id$
 #  #
 #  #
Line 17  die $usage unless getopts('t:o:d'); Line 17  die $usage unless getopts('t:o:d');
   
 $DEBUG=$opt_d;  $DEBUG=$opt_d;
   
 # Находим максимальный и минимальный вопрос и слегка подстраховываемся.  
 $MINQUEST=1e99;  
 $MAXQUEST=-1;  
 for (my $r=1; $r<=$ROUNDS; $r++) {  
     if ($MINQUEST>$MINQUEST[$r]) {  
         $MINQUEST=$MINQUEST[$r];  
     }  
     if ($MAXQUEST<$MAXQUEST[$r]) {  
         $MAXQUEST=$MAXQUEST[$r];  
     }  
 }  
 if ($MINQUEST < 0 || $MAXQUEST < 0) {  
    die "Отрицательные номера вопросов не поддерживаются!\n";  
 }  
   
   
 my %teams;  my %teams;
 my @answers;  my @answers;
Line 48  if ($opt_t) Line 33  if ($opt_t)
 #  #
 # Читаем ответы команд для ВСЕХ зачётов  # Читаем ответы команд для ВСЕХ зачётов
 #  #
 for (my $r=1; $r<=$ROUNDS; $r++) {  
     foreach my $file ( @{$FILES[$r]} ) {  $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);          open (INFILE, $file);
         readmail(\%teams);          readmail(\%teams);
         collect_answers(\%teams,\@answers);          collect_answers(\%teams,\@answers);
Line 65  if ($opt_o) Line 58  if ($opt_o)
     die "Cannot open $opt_o\n" unless open(OUTFILE,">$opt_o");      die "Cannot open $opt_o\n" unless open(OUTFILE,">$opt_o");
     select OUTFILE;      select OUTFILE;
 }  }
 for ($i=$MINQUEST;$i<=$MAXQUEST;$i++)  for ($i=1;$i<=$MAXQUEST;$i++)
 {  {
     foreach $symbol ('+','-','?')      foreach $symbol ('+','-','?')
     {      {
Line 74  for ($i=$MINQUEST;$i<=$MAXQUEST;$i++) Line 67  for ($i=$MINQUEST;$i<=$MAXQUEST;$i++)
 }  }
 print "***\n";  print "***\n";
   
 #  
 # На всякий случай проверяем на наличие команд с дублирующимися номерами.  
 #  
 check_dup_numbers(\%teams);  

Removed from v.3.3  
changed lines
  Added in v.3.0


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>