我需要用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);

09-13 04:52