学费增加

时间:2018-09-30 05:08:56

标签: c#

我正在尝试显示第一年original tuition + interest rate,然后再计算所有利率复合值。它卡在第二年,然后重复。

private void button1_Click(object sender, EventArgs e)
{
    double originalTuition = 6000.00;
    double newTuition;
    double interestRate = 0.02;
    tuitionListBox.Items.Clear();

    for (int year = 1; year <= 5; year++)
    {
        if (year == 1)
            newTuition = originalTuition;

        else
            newTuition = originalTuition + (originalTuition * interestRate);
            newTuition = newTuition + (newTuition * interestRate);
            tuitionListBox.Items.Add(year + "\t" + newTuition.ToString("c"));
    }
}

3 个答案:

答案 0 :(得分:1)

newTuition在第1年之后始终以相同的值开始,这是由于您的“ else”限制。我的猜测是您想删除“ else”之后的第一行代码。

答案 1 :(得分:0)

首先初始化 newTuition 变量。 然后下面的代码:

for (int year = 1; year <= 5; year++)
{
    if (year == 1)
        newTuition = originalTuition;
    else
        newTuition = newTuition + (newTuition * interestRate);
   tuitionListBox.Items.Add(year + "\t" + newTuition.ToString("c"));
}

答案 2 :(得分:0)

我建议创建一种新方法以提高清晰度和可重用性。将括号与if / else语句一起使用可使代码更易于阅读,从而确定问题所在。

 if (response.isSuccessful()) {
  ResponseItem responseItem;
  responseItem = response.body(); }