【问题标题】:Interest calculation for loop javascript double investment循环javascript双重投资的利息计算
【发布时间】:2017-05-19 19:03:54
【问题描述】:

我正在尝试开发一个程序来计算需要多少年才能使投资翻倍(例如 100 美元),在本例中为 3.5% 的利息。利息/投资的价值可能会有所不同。我想看看每年的结果。我的循环有效,但我需要在金额翻倍(200 美元)而不是 200 年后停止我的循环。你能帮我修复我的脚本以在金额翻倍后停止计数吗?

================================================ ==========================

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var investment = 100;
var rate = 0.035;
var text = "";
for (var i=1; i <= investment * 2; i++) {
    text += "total amount in "+i+" years is " + "$" + (investment * ( 1 + (i   * rate))) + "<br>";
}
document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

【问题讨论】:

  • for (var i=1; (investment * ( 1 + (i * rate))) &lt;= investment * 2; i++) {

标签: javascript loops for-loop


【解决方案1】:

您可以通过while 循环使用不同的方法,并根据加倍的投资检查实际资本。

在循环中,获得一年的利息资本并增加year 计数器。然后将此信息添加到输出中。

var investment = 100,
    rate = 0.035,
    capital = investment,
    year = 0;
    
while (capital < investment * 2) {
    capital += capital * rate;
    year++;
    document.getElementById("demo").innerHTML += "total amount in " + year + " " + (year === 1 ? "year" : "years") + " is " + "$" + capital.toFixed(2) + "<br>";
}
&lt;p id="demo"&gt;&lt;/p&gt;

【讨论】:

    【解决方案2】:

    您需要将for循环条件中的金额与双倍本金进行比较,而不是将年份与双倍投资进行比较

    for (var i=1; (investment * ( 1 + (i   * rate))) <= investment * 2; i++) {
        text += "total amount in "+i+" years is " + "$" + (investment * ( 1 + (i   * rate))) + "<br>";
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-25
      • 1970-01-01
      • 1970-01-01
      • 2016-06-04
      • 2020-01-28
      • 2012-03-23
      相关资源
      最近更新 更多