gpt4 book ai didi

javascript - 将 3 个值相加至 100%

转载 作者:行者123 更新时间:2023-12-03 00:24:48 25 4
gpt4 key购买 nike

我需要根据 3 个不同的计数/来计算状态百分比假设我有 3 种状态1)通过2)失败3)跳过

当有两种情况时,我设法通过设置一种使用Floor方法的计算和另一种使用Ceil方法的计算来解决这个问题。他们总能完美地将两个数字相加到 100。但现在我被 3 个值难住了。如有帮助,我们将不胜感激。

const successRate = Math.floor((this.progressCounts.getStatusCount('Passed') * 100) / this.progressCounts.getTotal()),
failureRate = Math.ceil((this.progressCounts.getStatusCount('Failed') * 100) / this.progressCounts.getTotal()),
skippedRate = Math.floor((this.progressCounts.getStatusCount('Skipped') * 100) / this.progressCounts.getTotal());

最佳答案

这就是带有四舍五入的百分比和分数的问题。最简单的方法可能是向下取整一个,向上取整另一个,然后根据到目前为止的总和计算如何处理最后一个。

const successRate = Math.floor((this.progressCounts.getStatusCount('Passed') * 100) / this.progressCounts.getTotal());
const failureRate = Math.ceil((this.progressCounts.getStatusCount('Failed') * 100) / this.progressCounts.getTotal());
let skippedRate = this.progressCounts.getStatusCount('Skipped');
if (successRate + failureRate + \
Math.floor(skippedRate * 100)/this.progressCounts.getTotal() == 100) {
skippedRate = Math.floor(skippedRate * 100)/this.progressCounts.getTotal();
} else {
skippedRate = Math.ceil(skippedRate * 100)/this.progressCounts.getTotal();
}

你可能需要稍微捏造一下,但大致上是这样的。

关于javascript - 将 3 个值相加至 100%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54135991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com