您当前的位置: 首页 > 网站编程 > PHP教程 > 用PHP迭代器来实现一个斐波纳契数列

用PHP迭代器来实现一个斐波纳契数列

作者:不详 来源:网络 发布时间: 2014-07-31 09:42 点击:
斐波纳契数列通常做法是用递归实现,当然还有其它的方法。这里现学现卖,用PHP的迭代器来实现一个斐波纳契数列,几乎没有什么难度,只是把类里的next()方法重写了一次。注释已经写到代码中,也是相当好理解的。 current; } public function key() { return $this-key;

用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
分享到:
本文"用PHP迭代器来实现一个斐波纳契数列"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4