sub fib {int(((((1+sqrt(5))/2)**$_[0])/sqrt(5))+.5)} sub fib2 { my ($n) = @_; my ($x, $y) = (1, 1); ($x, $y) = ($y, $x + $y) for 3 .. $n; return $y; } for (my $n = 1; 1; $n++) { my ($x, $y) = (fib($n), fib2($n)); if ($x != $y) { print "$n: $x $y"; last; } } __END__ 71: 308061521170130 308061521170129