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

用PHP迭代器來實現一個斐波納契數列

編輯:關於PHP編程

       斐波納契數列通常做法是用遞歸實現,當然還有其它的方法。這裡現學現賣,用PHP的迭代器來實現一個斐波納契數列,幾乎沒有什麼難度,只是把類裡的next()方法重寫了一次。注釋已經寫到代碼中,也是相當好理解的。

      current;

      }

      public function key() {

      return $this->key;

      }

      public function next() {

      // 關鍵在這裡

      // 將當前值保存到 $newprevious

      $newprevious = $this->current;

      // 將上一個值與當前值的和賦給當前值

      $this->current += $this->previous;

      // 前一個當前值賦給上一個值

      $this->previous = $newprevious;

      $this->key++;

      }

      public function rewind() {

      $this->previous = 1;

      $this->current = 0;

      $this->key = 0;

      }

      public function valid() {

      return true;

      }

      }

      $seq = new Fibonacci;

      $i = 0;

      foreach ($seq as $f) {

      echo "$f ";

      if ($i++ === 15) break;

      }

      ?>

      程序運行結果:

      0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610

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