当前位置: 首页 > 知识库问答 >
问题:

对百分比和利息计算有困难[副本]

太叔鹏云
2023-03-14

包括一个额外的用户投入,即每年增加额外捐款的百分比。例如,假设用户希望在第一年贡献$1000,每年增加2%。在第一年结束时,1000美元将增加到帐户中。在第二年年底,额外的金额增长2%,因此1020美元将增加到帐户。在第3年结束时,额外的金额又增长了2%,所以1040.40美元将被添加到帐户中,等等。我有麻烦与附上的代码,谁能帮助我吗?

import java.util.Scanner;

public class GettingRichSlowly {
    public static void main(String[] args) {
        Scanner scnr = new Scanner(System.in);

        // Get user input for initial deposit, annual interest rate,
        //  number of years, amount of yearly extra contribution
        System.out.println("Enter initial deposit: ");
        double initialDeposit = scnr.nextDouble();
        System.out.println("Enter annual interest rate (as a percentage): ");
        double interestRate = scnr.nextDouble();
        System.out.println("Enter number of years: ");
        int years = scnr.nextInt();
        System.out.println("How much extra would you like to contribute at the end of each year? ");
        double extraAmount = scnr.nextDouble();
        System.out.println("How much should the annual contribution increase each year (as a percentage)?");
        double annualIncrease = scnr.nextDouble();
        annualIncrease = annualIncrease / 100 + 1;

        // Amount in the account at the beginning of the current year
        double yearStart = initialDeposit;

        // Repeat years number of times
        int i = 1;
        while (i <= years) {
            // Dollar amount of interest earned during the current year
            double interest = yearStart * interestRate / 100;

            if (i == 1) {
            double yearEnd = yearStart + interest + extraAmount;
            }
            else {
                 extraAmount = extraAmount * annualIncrease;
                double yearEnd = yearStart + interest + extraAmount;
            }

            // Show the results for the current year
            System.out.format("%3d\t$%12.2f\t$%12.2f\t$%12.2f\t$%12.2f\n", i, yearStart, interest, extraAmount, yearEnd);

            // Update yearStart for the following year
            yearStart = yearEnd;

            i++;
        }
    }
}

编辑:当运行输入为100、7.5、10、1000、5的代码时,我会得到几条错误消息。GettingRichSlowly.java:44:找不到符号符号:变量yearEnd位置:类GettingRichSlowly System.Out.Format(“%3d\t$%12.2f\t$%12.2f\t$%12.2f\t$%12.2f\t$%12.2f\n”,i,yearStart,interest,extraAmount,yearEnd);^GettingRichSlowly.java:47:找不到符号符号:变量yearEnd位置:类GettingRichSlowly yearStart=yearEnd;这些是什么意思?

共有1个答案

邢星波
2023-03-14

你必须声明“双年结束”超过如果身体。

       double yearEnd;
        if (i == 1) {
            yearEnd = yearStart + interest + extraAmount;
        }
        else {
            extraAmount = extraAmount * annualIncrease;
            yearEnd = yearStart + interest + extraAmount;
        }

        // Show the results for the current year
        System.out.format("%3d\t$%12.2f\t$%12.2f\t$%12.2f\t$%12.2f\n", i, yearStart, interest, extraAmount, yearEnd);
 类似资料:
  • 问题内容: 我有4个项目MySQL数据库:(数值),和。 在我的报告中,我需要通过“调查”中的数字来计算已参加调查的“雇员”的百分比。 这是我现在的声明: 表格如下: 我想按参加调查的人数来计算谁所占的百分比。即,如以上数据所示,分别为0%和95%。 问题答案: 尝试这个 在这里演示

  • 我有一个包含4个项的MySQL数据库:(数值)、、和。 在我的中,我需要根据“surveys”中的数字来计算接受调查的“employees”的百分比。 这就是我现在的说法: 下面是表格的原样: 我想根据中的数字计算参加调查的的百分比。即,如上面的数据所示,将为0%,将为95%。

  • 我试图计算数字的百分比(取自一个文本字段),并将计算值设置为另一个表单字段。为此,我尝试了下面的代码,但我发现js正在检测的键事件/小数位数不匹配。 例如,如果我在第一个输入字段中提供100(以计算1.75的百分比),根据我的js代码,我预计是1.75,但在第二个文本字段中是0.175。我知道这是一个非常简单的计算,但我无法解决这个问题。

  • 我连接到一个流,它提供给我+100个加密货币的实时价格(我大约每2秒获得一个新价格)。我想知道,如何计算每个密码价格之间的百分比差异在5分钟的周期,然后更新它每新的一分钟?我正在使用带有本机Websocket连接(不是socket.io)的React。 我想我必须每分钟“节省”(以某种方式)每个密码价格,但我如何才能做到这一点? 出于测试目的,为了查看是否可以每10秒更新一个加密价格,我尝试在套接

  • 这5个国家在所有奥运会上获得的奖牌中,每个国家获得的奖牌比例是多少?

  • 我试图在Java实现Ford Fulkerson算法。到目前为止,我有了一个带节点和边的图。节点包含一个ID字符串和一个边的邻接列表。边包含容量和它通向的节点。 我正在尝试理解维基百科页面上的psudo代码,以及如何实现它(我正在使用Java)。这是我目前所理解的: > 首先我将图中所有边的流设置为零。(什么是表示流的好方法?直接在我的图的边中作为变量?) 第二步是创建残差图,它是一个网络,其中边