zoukankan      html  css  js  c++  java
  • php关于精准计算的模块 BCMath

    Php: BCMath

    bc是Binary Calculator的缩写。bc*函数的参数都是操作数加上一个可选的 [int scale],比如string bcadd(string $left_operand, string $right_operand[, int $scale]),如果scale没有提供,就用bcscale的缺省值。这里大数直接用一个由0-9组成的string表示,计算结果返回的也是一个 string。

    bcadd — 将两个高精度数字相加

      string bcadd(string left operand, string right operand [, int scale]);

    bccomp — 比较两个高精度数字,返回-1, 0, 1

      int bccomp(string left operand, string right operand [, int scale]);

    bcdiv — 将两个高精度数字相除

      string bcdiv(string left operand, string right operand [, int scale]);

    bcmod — 求高精度数字余数

      string bcmod(string left operand, string modulus);

     bcmul — 将两个高精度数字相乘

      string bcmul(string left operand, string right operand [, int scale]);

     bcpow — 求高精度数字乘方

      string bcpow(string x, string y [, int scale]);

     bcpowmod — 求高精度数字乘方求模,数论里非常常用

      string bcpowmod ( string x, string y, string modulus [, int scale]);

     bcscale — 配置默认小数点位数,相当于就是Linux bc中的”scale=”

      string bcscale(int scale);

     bcsqrt — 求高精度数字平方根

      string bcsqrt(string operand [, int scale]);

     bcsub — 将两个高精度数字相减

      string bcsub(string left operand, string right operand [, int scale]);

    可以参考手册去查这些函数的应用。

    bcmath的安装
    bcmath这个扩展在php的压缩包中都是有的,需要重新编译一下才能够支持;
    cd php-5.2.7/ext/bcmath
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config
    make && make install (make 可以得到so路径)
    so路径拷贝到 extension路径
    vim php.ini
    extension=bcmath.so
    重启apach


    PHP code?

    /*bcsub 函数说明
    此函数将二个高精确度的数字相减,传入二个字符串,以左边的 (left operand) 减去右边的 (right operand) 值。scale 是一个可有可无的选项,表示返回值的�小数点后所需的位数。*/
    //下面的代码我是保证了小数点一位数字
    $aa=bcsub(134.7,52.5,1);
    echo $aa;//exit;
    $bb=bcsub($aa,82.2,1);
    echo $bb;//exit;

  • 相关阅读:
    javaWeb普通类获取ApplicationContext
    医学图像处理最全综述
    图像分割最全综述
    解放双手——相机与IMU外参的在线标定
    从零开始一起学习SALM-ICP原理及应用
    SLAM、三维重建,语义相关数据集大全
    SLAM面试常见问题
    SLAM方向国内有哪些优秀公司?
    三维视觉、SLAM方向全球顶尖实验室汇总
    SLAM方向公众号、知乎、博客上有哪些大V可以关注?
  • 原文地址:https://www.cnblogs.com/atjs/p/5284470.html
Copyright © 2011-2022 走看看