国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP如何實(shí)現(xiàn)斐波那契數(shù)列?(代碼實(shí)例)

2024-05-04 21:50:56
字體:
供稿:網(wǎng)友

斐波那契數(shù)列(Fibonacci sequence),又稱黃金分割數(shù)列、因數(shù)學(xué)家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數(shù)列”,指的是這樣一個數(shù)列:1、1、2、3、5、8、13、21、34、……,簡單來說,斐波那契數(shù)列就是一系列元素,前兩個元素相加得到下一個元素,從0和1開始。

在本文中,我們將給大家介紹如何用PHP實(shí)現(xiàn)斐波那契數(shù)列。給定一個數(shù)字n,我們需要找到斐波那契數(shù)列直到第n項。

例子:

輸入:10

輸出:0 1 1 2 3 5 8 13 21 34

輸入:15

輸出:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377

方法1:使用遞歸方式

遞歸是我們重復(fù)調(diào)用相同函數(shù)直到匹配基本條件以結(jié)束遞歸的方式。

  1. <?php 
  2.  
  3. function Fibonacci($number){ 
  4.  
  5.     if ($number == 0) 
  6.  
  7.         return 0; 
  8.  
  9.     else if ($number == 1) 
  10.  
  11.         return 1; 
  12.  
  13.     else 
  14.  
  15.         return (Fibonacci($number-1) + 
  16.  
  17.             Fibonacci($number-2)); 
  18.  
  19.  
  20. $number = 10; 
  21.  
  22. for ($counter = 0; $counter < $number$counter++){ 
  23.  
  24.     echo Fibonacci($counter),' '
  25.  

輸出:

0 1 1 2 3 5 8 13 21 34

方法2:使用迭代方法

首先,我們將第一個和第二個數(shù)字初始化為0和1.然后,我們打印第一個和第二個數(shù)字。然后我們將流程發(fā)送到迭代while循環(huán),我們通過添加前兩個數(shù)字得到下一個數(shù)字,同時我們將第一個數(shù)字與第二個數(shù)字交換,第二個數(shù)字與第三個數(shù)字交換。

  1. <?php 
  2.  
  3. function Fibonacci($n){  
  4.  
  5.     $num1 = 0; 
  6.  
  7.     $num2 = 1;  
  8.  
  9.     $counter = 0; 
  10.  
  11.     while ($counter < $n){ 
  12.  
  13.         echo ' '.$num1
  14.  
  15.         $num3 = $num2 + $num1
  16.  
  17.         $num1 = $num2
  18.  
  19.         $num2 = $num3
  20.  
  21.         $counter = $counter + 1; 
  22.  
  23.     } 
  24.  
  25.  
  26. //Vevb.com 
  27.  
  28. $n = 10; 
  29.  
  30. Fibonacci($n); 

輸出:

0 1 1 2 3 5 8 13 21 34

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 大埔县| 额尔古纳市| 荣昌县| 临泽县| 永春县| 广南县| 万全县| 梅河口市| 泰和县| 屏东县| 彭阳县| 武城县| 开鲁县| 绥德县| 自治县| 信阳市| 敦煌市| 涞源县| 郎溪县| 巴东县| 张家口市| 张家港市| 寿阳县| 温泉县| 岳西县| 波密县| 剑川县| 富阳市| 黄骅市| 祁连县| 益阳市| 务川| 淅川县| 康定县| 金堂县| 富裕县| 启东市| 万州区| 崇阳县| 青神县| 昌平区|