程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 斐波那契數列 Php練手

斐波那契數列 Php練手

編輯:關於PHP編程

    數列從第三項開始,每一項都等於前兩項之和。


F0=0,F1=1,Fn=F(n-1)+F(n-2)


       遞歸版和非遞歸版。


 

php 
function fib($n){ 
    $array = array(); 
    $array[0] = 1; 
    $array[1] = 1; 
    for($i=2;$i<$n;$i++){ 
        $array[$i] = $array[$i-1]+$array[$i-2]; 
    } 
    print_r($array); 
} 
fib(10); 
echo "\n------------------\n"; 
function fib_recursive($n){ 
    if($n==1||$n==2){return 1;} 
    else{ 
        return fib_recursive($n-1)+fib_recursive($n-2); 
    } 
} 
echo fib_recursive(10); 
?> 

<?php
function fib($n){
 $array = array();
 $array[0] = 1;
 $array[1] = 1;
 for($i=2;$i<$n;$i++){
  $array[$i] = $array[$i-1]+$array[$i-2];
 }
 print_r($array);
}
fib(10);
echo "\n------------------\n";
function fib_recursive($n){
 if($n==1||$n==2){return 1;}
 else{
  return fib_recursive($n-1)+fib_recursive($n-2);
 }
}
echo fib_recursive(10);
?>

作為C和java的程序猿,在第一次在寫非遞歸的時候,忘記了變量前加$,悲催。

輸出結果

Array 
( 
    [0] => 1 
    [1] => 1 
    [2] => 2 
    [3] => 3 
    [4] => 5 
    [5] => 8 
    [6] => 13 
    [7] => 21 
    [8] => 34 
    [9] => 55 
) 
 
------------------ 
55 

Array
(
    [0] => 1
    [1] => 1
    [2] => 2
    [3] => 3
    [4] => 5
    [5] => 8
    [6] => 13
    [7] => 21
    [8] => 34
    [9] => 55
)

------------------
55

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved