my $sum = 0; $sum += (-1)**($_+1) * $_ for 1 .. 1000; print "$sum\n";
my $sum = 0; my $sign = 0; for my $i (1 .. 1000) { $sum += ($sign ? -1 : 1) * $i; $sign = !$sign; } print $sum;
my $sum = 0; my $sign = 0; for my $i (1 .. 1000) { $sum += ($sign++ % 2 ? -1 : 1) * $i; } print $sum;
my $sum = 0.5*(1 + 999)*( (999-1)/2 + 1 ) - 0.5*(2 + 1000)*( (1000-2)/ +2 + 1 ); print $sum;
Of course, "Smart" can yield round-off issues...
In reply to Re: stupid question about switching signs every number
by kennethk
in thread stupid question about switching signs every number
by derpp
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |