我需要用Java编写一个程序,该程序可以将5的倍数提高到用户给定的值,然后将所有的倍数加在一起。我需要用while循环编写它。
这是我到目前为止的内容:
import java.util.Scanner;
public class SummationOfFives {
public static void main(String[] args){
//variables
double limit;
int fives = 0;
//Scanner
System.out.println("Please input a positive integer as the end value: ");
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
limit = input.nextDouble();
//While Loop
while ((fives+5)<=limit)
{
fives = fives+5;
System.out.println("The summation is: "+fives);
}
}
}
但是,当我运行该程序时,所得到的只是倍数:
Please input a positive integer as the end value:
11
The summation is: 5
The summation is: 10
最佳答案
你快到了!考虑一下您的输出告诉您什么。在您的while
循环中,fives
是每次迭代的5的下一个倍数。您不会将其添加到任何地方的总变量中。
所以-在循环之前定义总计,例如
int total = 0;
继续添加到循环中(现在是
System.out.println
所在的位置),例如total = total + fives;
在循环后输出总计,例如
System.out.println(total);