#!/usr/local/bin/perl

$total=0;
$n=0;
$i=$#ARGV;
if ("$ARGV[0]" eq "-c")
  {
  if (($i<1)||($ARGV[1]==0)) 
    {
    print("usage: calcavg [-c n] [files]\n");
    exit;
    }
  if ($i==1)  #no files are given
    {
    while($l=<STDIN>)
      {
      @LINE=split(/\s+/,$l);
      $total=$total+$LINE[$ARGV[1]-1];
      $n++;
      }
    $aver=$total/$n;
    print("Average = $aver\n");
    }
  else
    {
    for ($j = 2; $j<=$i; $j++)
      {
      open(F,$ARGV[$j]) || die "Cannot open $ARGV[$j]";
      while ($l=<F>)
	{
	@LINE=split(/\s+/,$l);
	$total=$total+$LINE[$ARGV[1]-1];
	$n++;
	}
      }
    $aver=$total/$n;
    print("Average = $aver\n");
    }
  }
else
  {
  if ($i < 0)  #no files are given
    {
    while ($l=<STDIN>)
      {
      @LINE=split(/\s+/,$l);
      for ($j=0; $j<=$#LINE; $j++)
	{
	$total=$total+$LINE[$j];
	$n++
	}
      }
    $aver=$total/$n;
    print("Average = $aver\n");
    }
  else
    {
    for ($j=0; $j<=$i; $j++)
      {
      open(F,$ARGV[$j]) || die "Cannot open $ARGV[$j]";
      while($l=<F>)
	{
	@LINE=split(/\s+/,$l);
	for ($k=0; $k<=$#LINE; $k++)
	  {
	  $total=$total+$LINE[$k];
	  $n++;
	  }
	}
      }
    $aver=$total/$n;
    print("Average = $aver\n");
    }
  }

