如何计算缺失的数字,以便当我将其添加到某个变量时,结果将等于或大于另一个变量。
如果平均值低于目标,我想找到我需要的促销员数量。如何计算缺失的数字,以便在将其添加到促销方时,平均值的结果等于或大于目标。
谢谢!
function missingNum() {
var xPromoter = '';
var x = 10;
var y = 2;
var target = 75;
var z = x + y;
var v = ((x - y) / z) * 100;
average = Math.round(v * 100) / 100;
if (average<target) //how to increment x so that average => target
document.write("Promoter:" + "\n" + x + "<br>");
document.write("Detractor:" + "\n" + y + "<br>" );
document.write("Total:" + "\n" + z + "<br>" );
document.write("Average:" + "\n" + average + "<br>" );
document.write("Target:" + "\n" + target + "<br>" );
document.write("You need " + "\n" + xPromoter + "Promoters to reach your Target." );
}
答案 0 :(得分:1)
忘记循环并做一些数学!做一些代数,给定目标和当前数量的批评者和推动者所需的推动者的公式是:
promotersNeeded = (detractors * (target + 100) / (100 - target)) - promoters
所以在你的例子中,
promotersNeeded = 2 * (75 + 100) / (100 - 75) - 10
出现在4。
答案 1 :(得分:1)
这是一个简单的代数问题。
平均=((促销员 - 批评者)/总计)* 100
让fp
成为您正在寻找的最终推广人数
让d
成为目前的批评者数量
让t
成为您的目标平均值
现在只需输入t
和d
的数字,然后求解x
fp = ((75 / 100) * 2 + 2) / (1 - 75 / 100)
写出这一切,以便您可以看到最终结果:
fp = (.75 * 2 + 2) / (1 - .75)
fp = (1.5 + 2) / .25
fp = 3.5 / .25
fp = 14
使用程序中的变量
var fp = ((target / 100) * y + y) / (1 - target / 100);
xPromoter = fp - x;
答案 2 :(得分:0)
你总是可以做一个简单的函数..但计算可能会更好..
function calculateNeededPromoters (promo, detrac) {
var percentage = 0.00;
var currentPromo = promo;
while (percentage < 75) {
currentPromo++;
var total = currentPromo + detrac;
var v = ((currentPromo - detrac) / total) * 100;
percentage = Math.round(v * 100) / 100;
}
return currentPromo;
}