1

这似乎是一个愚蠢的问题,但我大约一周前才开始学习 javascript。我决定尝试使用 javascript 自动化我的作业,但我不知道如何做到这一点。它的工作原理如下:

您正在计算人口达到一定数量需要多少年。

我们将把它简化,并使增长率为 0.20。人口将从 50 人开始,我们希望它达到 100 人。

到目前为止,这就是我所拥有的:

    function newPeople(start, growth) {
    var a = start * growth;
    var b = start + a;
    var c = Math.round(b);
    var d = c * growth;
    var e = c + d;
    var f = Math.round(e);
    return f;
    }

    newPeople(50, .20);

你可以看到它可以通过每次创建一组新的变量来手动完成,但是我该如何自动化呢?

4

1 回答 1

1

这应该有效:

// start is the current population
// growth is the growth rate
// target is the target population
function newPeople(start, growth, target) {

    var pop = start;
    var years = 0;
    while(pop <= target) {
        years++; // increment year by one
        pop = pop + Math.floor(pop * growth);
    }

    // return what you need from the function here
    // "return years;" will give you the number of years it takes to go from "start" to "target"
    // "return pop;" will give you the actual population after "years" number of years
}
于 2013-01-20T08:35:23.933 回答