求一个递归算法实现费波拉奇数列输出

求一个递归算法实现费波拉奇数列输出

求一个递归算法实现费波拉奇数列输出
要求输入一个参数作为数列输出的最大值。
例如输入100,则只能显示下面的数列:
0,1,1,2,3,5,8,13,21,34,55,89。
下一个144就不要输出了

我刚开始学习perl,希望哪位兄弟能给个代码作参考
晕。今年我们北京卷高考数.
晕。今年我们北京卷高考数学最后一道题就考的这个。心情顿时黑暗起来。
麻烦你把该数列的定义或者通项公式发出来吧,不然我想可能不会有太多人知道什么是费波拉奇数列。
[quote]#!/usr/bin/perl -.
[quote]#!/usr/bin/perl -w
use strict;

my $i=0;
my @fib;
print 'input a limit number: ';
chomp(my $n=<STDIN>);

while (defined $i) {
my $result= fib($i);
print "$result\n" if $result <$n;
last if $result >=$n;
$i++;
}

sub fib {
my $n = shift;
return $fib[$n] if defined $fib[$n];
return $fib[$n] = $n if $n < 2;
$fib[$n] = fib($n-1) + fib($n-2);
}[/quote]
上面这个是优化过的(空间换时间),比下面这个要快[quote]sub fib
{
my $n = shift;
return $n if $n <2;
return fib( $n - 1 ) + fib( $n - 2 );
}
[/quote]

菲波那切数列学过数学的人大概都知道吧?呵呵




   

我记得什么初高中数学之类.
我记得什么初高中数学之类的竞赛有个什么兔子繁殖的题吧?就是这个数列
另外达芬奇密码看过没?一出来就是这个数列哈哈
啊?现在不兴竞赛了,在我.
啊?现在不兴竞赛了,在我们这。
达芬奇呢,高考完那天本来想去看的,后来一偷懒,9号就被禁了。听说是几个宗教头领抗议来的。
跑题鸟,技术区不灌水。要制造学术氛围,Over。
非常感谢 已经看到正确的结果了 非常感谢 !
[quote]回复给 cnhacktnt : [quote]#!/usr/bin/perl -....[/quote]