All pastes #1841409 Raw Edit

Miscellany

public text v1 · immutable
#1841409 ·published 2010-03-15 17:47 UTC
rendered paste body
#!/usr/bin/perl@tokens = split(/\+/, $ARGV[0]);$total = 0;$avgtotal = 0;foreach $token (@tokens){	if ($token =~ /(\d+)d(\d+)/)	{		$num = $1;		$sides = $2;		print $num . "d$sides: ";				$subtotal = 0;		for ($i = 0; $i < $1; $i++)		{			$result = int(rand($sides)+1);			if ($i > 0)			{				print "+ ";			}			print "$result ";			$subtotal += $result;		}		print "= $subtotal\n";				$avg = $num * (($sides / 2) + 0.5);		$avgtotal += $avg;				$total += $subtotal;	}	elsif ($token =~ /(\d+)/)	{		$total += $1;		$avgtotal += $1;	}}print "Total: $total (average $avgtotal)\n";