$ cat -A lab5.data1
Mike Harrington:(510) 548-1278:250:100:175
Christian Dobbi:(408) 538-2358:155:90:201
Susan Dalsass:(206) 654-6279:250:60:50
Archie McNichol:(206) 548-1348:250:100:175
Jody Savage:(206) 548-1278:15:188:150
Guy Quigley:(916) 343-6410:250:100:175
Dan Savage:(406) 298-7744:450:300:275
Nancy McNeil:(206) 548-1278:250:80:75
John Goldenrod:(916) 348-4278:250:100:175
Chet Main:(510) 548-5258:50:95:135
Tom Savage:(408) 926-3456:250:168:200
Elizabeth Stach:(916) 440-1763:175:75:300
要求写脚本达到以下效果:
***CAMPAIGN 1998 CONTRIBUTIONS***
________________________________________________________________________
NAME PHONE Jan | Feb | Mar | Total Donated
________________________________________________________________________
Mike Harrington (510) 548-1278 250 100 175 525
Christian Dobbi (408) 538-2358 155 90 201 446
Susan Dalsass (206) 654-6279 250 60 50 360
Archie McNichol (206) 548-1348 250 100 175 525
Jody Savage (206) 548-1278 15 188 150 353
Guy Quigley (916) 343-6410 250 100 175 525
Dan Savage (406) 298-7744 450 300 275 1025
Nancy McNeil (206) 548-1278 250 80 75 405
John Goldenrod (916) 348-4278 250 100 175 525
Chet Main (510) 548-5258 50 95 135 280
Tom Savage (408) 926-3456 250 168 200 618
Elizabeth Stach (916) 440-1763 175 75 300 550
_________________________________________________________________________
SUMMARY
_________________________________________________________________________
The campaign received a total of $6137.00 for this quarter.
The average donation for the 12 contributors was $511.42.
The highest total contribution was $1025.00 made by Dan Savage.
***THANKS Dan***
The following people donated over %500 to the campaign.
They are eligible for the quarterly drawing!!
Listed are their names (sorted by last names) and phone numbers:
John Goldenrod--(916) 348-4278
Mike Harrington--(510) 548-1278
Archie McNichol--(206) 548-1348
Guy Quigley--(916) 343-6410
Dan Savage--(406) 298-7744
Tom Savage--(408) 926-3456
Elizabeth Stach--(916) 440-1763
Thanks to all of you for your continued support!!
#cat awk.sc
BEGIN{FS=":"
print "\n"
print "\t\t***CAMPAIGN 1998 CONTRIBUTIONS***"
print "---------------------------------------------------------"
print "NAME\tPHONE\t\tJAN | FEB | MAR | Total Donated"
print "---------------------------------------------------------"
hight = 0
lowest = 10000
ht = 0
user = $1
}
{$6 = $3+$4+$5;print $1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6}
{total+=$6;average=total/12}
{if($5 > hight) hight = $5}
{if($3 < lowest) lowest = $3}
{if($6 > ht) {ht = $6;user = $1}}
$6 > 500{over500[$0]=$1"--"$2}
END{
print "---------------------------------------------------------"
print "\t\tSUMARY"
print "---------------------------------------------------------"
printf "The campaign received a total of $" "%2.2f\n",total" for this quarter\."
printf "The average donation for the 12 contributors was $" "%2.2f\n",average"\."
print "The highest contribution was $"hight"."
print "The lowest contribution was $"lowest"."
print "The highest total contribution was $" ht " made by "user"."
print " ***THANKS " user" ***"
print "The following people donated over %500 to the campaign."
print "They are eligible for the quarterly drawing!!"
print "Listed are their names (sorted by last names) and phone numbers:"
for (a in over500) print over500[a]