php获取指定范围内最接近数的方法


Posted in PHP onJune 02, 2015

本文实例讲述了php获取指定范围内最接近数的方法。分享给大家供大家参考。具体实现方法如下:

// Returns the next higher or lower number
function NextRelatedNumber($number, $range){  
  $r = $number % $range;
  $f = $number - $r;
  $b = round($r / $range, 0);
  return ($b == 1) ? $f + $range : $f;  
}
// Returns the next higher number
function NextHigherNumber($number, $range){  
  $r = $number % $range;
  $f = $number - $r;
  $b = ceil($r / $range);
  return ($b == 1) ? $f + $range : $f;  
}
// Returns the next lower number
function NextLowerNumber($number, $range){  
  $r = $number % $range;
  $f = $number - $r;
  $b = floor($r / $range);
  return ($b == 1) ? $f + $range : $f;  
}
// Returns the next related number from an array
function NextNumberArray($Number, $NumberRangeArray){
  $w = 0;
  $c = -1;
  $abstand = 0;
  $l = count($NumberRangeArray);    
  for($pos=0; $pos < $l; $pos++){
    $n = $NumberRangeArray[$pos];
    $abstand = ($n < $Number) ? $Number - $n : $n - $Number;
    if ($c == -1){
      $c = $abstand;
      continue;
    }
    else if ($abstand < $c){
      $c = $abstand;
      $w = $pos;
    }
  }
  return $NumberRangeArray[$w];
}
 
// Examples
// --------
// 0 10 20 30 40 50 ...
print 'NextRelatedNumber: ';
print NextRelatedNumber(44, 10) . "\n";
// returns --> 40
// 0 20 40 60 80 100 ...
print 'NextHigherNumber: ';
print NextHigherNumber(41, 20) . "\n";
// returns --> 60
// 0 5 10 15 20 25 30 35 ...
print 'NextLowerNumber: ';
print NextLowerNumber(57, 5) . "\n";
// returns --> 55
// Example with Array
print 'NextNumberArray: ';
print NextNumberArray(45, array(3, 8, 19, 34, 56, 89)) . "\n";
// returns --> 34
// (45 is between 34 and 56 but 34 is the next)

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP 超链接 抓取实现代码
Jun 29 PHP
php 图片上传类代码
Jul 17 PHP
drupal 代码实现URL重写
May 04 PHP
php根据isbn书号查询amazon网站上的图书信息的示例
Feb 13 PHP
php阻止页面后退的方法分享
Feb 17 PHP
PHP处理SQL脚本文件导入到MySQL的代码实例
Mar 17 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
Apr 24 PHP
php生成固定长度纯数字编码的方法
Jul 09 PHP
详解PHP防止盗链防止迅雷下载的方法
Apr 26 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 PHP
php curl批处理实现可控并发异步操作示例
May 09 PHP
实例分析PHP将字符串转换成数字的方法
Jan 27 PHP
PHP使用递归方式列出当前目录下所有文件的方法
Jun 02 #PHP
php使用socket post数据到其它web服务器的方法
Jun 02 #PHP
php自动给网址加上链接的方法
Jun 02 #PHP
php将字符串随机分割成不同长度数组的方法
Jun 01 #PHP
php正则preg_replace_callback函数用法实例
Jun 01 #PHP
php实现读取和写入tab分割的文件
Jun 01 #PHP
php从文件夹随机读取文件的方法
Jun 01 #PHP
You might like
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
jQuery Ajax使用 全解析
2010/12/15 Javascript
jquery isType() 类型判断代码
2011/02/14 Javascript
AJAX分页的代码(后台asp.net)
2011/02/14 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
2014/09/26 Javascript
JS及JQuery对Html内容编码,Html转义
2017/02/17 Javascript
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
React学习笔记之高阶组件应用
2018/06/02 Javascript
Angular7中创建组件/自定义指令/管道的方法实例详解
2019/04/02 Javascript
js实现简单贪吃蛇游戏
2020/05/15 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
python操作mysql数据库
2017/03/05 Python
对pandas的dataframe绘图并保存的实现方法
2017/08/05 Python
Python装饰器用法实例总结
2018/02/07 Python
Python实现的寻找前5个默尼森数算法示例
2018/03/25 Python
python保存文件方法小结
2018/07/27 Python
Python实现的爬取百度贴吧图片功能完整示例
2019/05/10 Python
pycharm 批量修改变量名称的方法
2019/08/01 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
Python urllib2运行过程原理解析
2020/06/04 Python
python3代码输出嵌套式对象实例详解
2020/12/03 Python
含精油的天然有机化妆品:Indemne
2019/08/27 全球购物
C语言面试题
2013/05/19 面试题
树转促学习心得体会
2014/09/10 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
庆元旦主持词
2015/07/06 职场文书
2016年春季趣味运动会开幕词
2016/03/04 职场文书
掌握这项技巧,一年阅读300本书不是梦
2019/09/12 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
带你了解CSS基础知识,样式
2021/07/21 HTML / CSS
python数字图像处理之图像的批量处理
2022/06/28 Python