这个概念很简单,
假设我参加了4个讲座中的3个。我目前的百分比是75%
我希望%高于95。这意味着我需要再参加16堂课,以使其在20堂课中占19堂。

这就是我在JS中实现的。我需要在结尾处乘以10-不知道为什么答案会是正确答案的1/10。

var present=3, absent=1;
var total = present+absent;
var CurrentPercentage = (100*present)/total;

var classReq = (95 * total)/100 - present;
classReq += (95 * classReq)/100;

console.log(classReq>0?(Math.ceil(classReq*10)):0);


它可以工作,但是我认为必须有一个更好的算法(我确定必须有)

最佳答案

基本上,您有一个讲座数(20)和一个百分比值(95%)并访问了讲座(3),您可以计算丢失的计数并减去已访问的讲座。

var target = 95,
    lectures = 20,
    visited = 3,
    needed = lectures * target / 100 - visited;

console.log(needed);


您可以查看错过的讲座,然后可以计算所需的讲座。

var target = 95,  // percent
    visited = 3,
    missed = 1,   // this is 5%
    needed = missed * 100 / (100 - target) - visited;

console.log(needed);

09-25 10:04