dsfdsf23423 2016-11-17 17:21
浏览 110

PHP舍入数到小数点后6位

I need to return a result of (1 / n!) * (1! + 2! + 3! + ... + n!), n>=1. This is a CodeWars challenge! The code below returns 1.146652 for n = 8, but the correct result is 1.1466510000000001 or 1.146651.

How can I truncate this number correctly?

function factorial($val){
  $factor = 1;
  for($i=1;$i<=$val;$i++){
    $factor *= $i;
  }
  return $factor;
}

function going($n) {
  $val = 1/factorial($n);
  $somatorio = 0;
  for($i=1;$i<=$n;$i++){
    $somatorio += factorial($i);
  }

  return round($val * $somatorio,6);
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 安装svn网络有问题怎么办
    • ¥15 Python爬取指定微博话题下的内容,保存为txt
    • ¥15 vue2登录调用后端接口如何实现
    • ¥65 永磁型步进电机PID算法
    • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
    • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
    • ¥15 如何处理复杂数据表格的除法运算
    • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
    • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
    • ¥15 latex怎么处理论文引理引用参考文献