【问题标题】:Java Counter ProgramJava 计数器程序
【发布时间】:2020-03-08 18:02:49
【问题描述】:

我正在开发一个用户提供两个数字的程序。第一个是计数器将计数到的数字。第二个是它将这样做的增量。该程序的起始数字是 1,并且应该将所有数字相加,从而将第一个给定数字相加。例如,用户输入数字 7 和 2。所以程序应该执行以下操作:1+3+5+7 等于 16。我不知道我的程序做错了什么。

System.out.print("Please enter your first positive number: ");
int n1 = user.nextInt();
System.out.print("Please enter your second positive number: ");
int n2 = user.nextInt();

int sum = 1;

while(sum <= n1)
{
    sum += n2;
}
System.out.println("Sum = " + sum);

【问题讨论】:

    标签: java counter increment


    【解决方案1】:

    目前,当您的总和超过 n1 时,您将停止。对于每个循环,您添加的是n2,而不是最后一个增加n2 的值。

    试试这个,它使用一个 for 循环来循环真实的增量值(每次迭代都会增加):

    System.out.print("Please enter your first positive number: ");
    int n1 = user.nextInt();
    System.out.print("Please enter your second positive number: ");
    int n2 = user.nextInt();
    
    // start your sum at zero
    int sum = 0;
    
    // loop increasing the increment value until it exceeds the users input
    for(int increment = 1; increment <= n1; increment += n2) {
        sum += increment;
    }
    System.out.println("Sum = " + sum);
    

    【讨论】:

    • 这比我半途而废的尝试要好得多。
    • 其实这和你原来的答案差别不大。
    • 谢谢!现在看来,这完全有道理。
    • 如果这个答案解决了你的问题,请考虑采纳。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-18
    • 2012-04-23
    • 1970-01-01
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    相关资源
    最近更新 更多