Code Golf. As with the real sport the goal is to reduce the number of strokes that it takes to complete a particular objective, although with Code Golf “strokes” refers to keystrokes rather than swings of a golf club.
You may compete using any language.1
Create an algorithm that prints the 30 first fibonacci number to the screen, each followed by a newline.
An algorithm which could do this would be (148 bytes):
my $a = 1;
my $b = 0;
my $c;
my $limit = 30;
my $i = 0;
while ($i < $limit) {
$i += 1;
$c = $a + $b;
$a = $b;
$b = $c;
print $c . "\n";
}
But that can be written way shorter.
My first:
$a=1;for((0..29)){$c=$a+$b;$a=$b;$b=$c;print"$c\n"}
My second:
$a=1;$c=$a+$b,$a=$b,$b=$c,print"$c\n"for 0..29
Noud’s reponse:
$i=1;print$i+=$a,"\n",$a+=$i,"\n"while$i<317811
My revenge:
$a=1;$c=$a+$b,$a=$b,$b=$c,print"$c\n"for 0..29
Noud was 30 seconds later with:
$a=1;print$a+=$b,"\n",$b+=$a,"\n"for 1..15
My latest one: partially by Bram too
print$a+=$b,"\n",$b+=$a,"\n"for$a++..14
Update:Twan:
print$a+=$b,$/,$b+=$a,$/for$a++..14
1. a language that implements fib
returning mysteriously the first 30 fibonacci numbers isn’t allowed.