#!/usr/local/bin/perl # Jaime Prilusky, 2003 use Benchmark; $t0 = new Benchmark; $num = $ARGV[0]; print fibo($num),"\n"; $t1 = new Benchmark; $td = timediff($t1, $t0); print "the code took:",timestr($td),"\n"; sub fibo { my($n) = @_; return 0 if ($n == 0); return 0 if ($n == 1); return 1 if ($n == 2); $f{$n-1} = fibo($n-1) if (!$f{$n-1}); $f{$n-2} = fibo($n-2) if (!$f{$n-2}); return $f{$n-1} + $f{$n-2}; }