使用PHP获取斐波那契数字
斐波那契数不仅有一些用途,而且本身也是一个很好的小数列。
序列从0开始,下一个数字是1,其后的每个数字是最后两个数字的总和。因此,第三个数字是1,第二个数字是2。
要在PHP中创建此数字序列,我们需要在数组中创建前两个项目。我们知道它们是0和1,我们可以像这样创建数组。
$fibarray=array(0,1);
要创建第三个数字,我们只需将前两个数字相加即可。
$fibarray[2]=$fibarray[0]+$fibarray[1];
如果将其添加到循环中,则可以继续进行任意数量的操作。
for ( $i=2; $i<=10; ++$i ) { $fibarray[$i] = $fibarray[$i-1] + $fibarray[$i-2]; }
这将创建一个具有以下值的数组。
Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 3 [5] => 5 [6] => 8 [7] => 13 [8] => 21 [9] => 34 [10] => 55 )
接下来,我们可以使用以下函数将斐波纳契数列获取到所需的任何位置。
function fibonacciSequence($pos){ $fibarray = array(0, 1); for ( $i=2; $i<=$pos; ++$i ) { $fibarray[$i] = $fibarray[$i-1] + $fibarray[$i-2]; } return $fibarray; }
我们还可以创建一个非常相似的函数,该函数仅在特定位置返回数字。
function fibonacciSequence($pos){ $fibarray = array(0, 1); for ( $i=2; $i<=$pos; ++$i ) { $fibarray[$i] = $fibarray[$i-1] + $fibarray[$i-2]; } return $fibarray[$pos]; }
例如,如果我们将此函数传递给数字56,则结果将为225,851,433,717。