【问题标题】:Math issue in phpphp中的数学问题
【发布时间】:2019-05-19 13:26:03
【问题描述】:

我试图在我的应用程序(基于 laravel)中获取两个数字的百分比,但我没有得到正确的数字。

代码:

$pdts->price = 123.234
$pdts->newprice = 90.500
{{number_format($pdts->newprice / $pdts->price * 100, 0) } }%

它返回-73%,它应该返回-27%。我该如何纠正这个问题?

更新To those still didn't get it

我确实定义了我的目标 / 我在寻找什么 it should return -27%. How do I correct this? 所以我希望得到-27% 作为结果,感谢评论者我确实找到了我的解决方案。

我不明白所有这些投票否决和继续 cmets

【问题讨论】:

  • 我的数学表明它应该返回 -73 你在计算器上试过了吗?
  • @Andreas 不,我没有,如果我的方法有问题,我怎样才能得到正确的答案?我应该改变什么?
  • 我得到-73% - 3v4l.org/e8ljS
  • 您应该定义目标。你在找en.wikipedia.org/wiki/Relative_change_and_difference吗?
  • OP 我没有投反对票。但我明白为什么(我认为)他们投了反对票。这个问题只是数学问题,与 PHP 或任何编程语言无关。我相信这个问题很适合堆栈交换的数学部分。但我也想说,我同意你对如何计算百分比的争论的挫败感。你确实很清楚你想要什么价值,坦率地说,谁在乎你如何得到这个数字?只要是正确的。每一次。

标签: php laravel


【解决方案1】:

这不是真正的编程问题,它更像是一道数学问题。

但是要得到你想要的结果,你需要计算百分比的差异。

//(123.234-90.500)/123.234*100
- {{number_format(($pdts->price - $pdts->newprice) / $pdts->price * 100, 0) } }%
// -27%

【讨论】:

    【解决方案2】:

    试试这个,

    $value = ($pdts->price-$pdts->newprice) / $pdts->price * 100;
    $percentage = (int)($value).'%';
    

    在这里,百分比变量将具有您所需的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多