Java 如何计算2、3、5和7的整数和?

Java 如何计算2、3、5和7的整数和?,java,if-statement,for-loop,Java,If Statement,For Loop,当我试图计算多个数字的总和时,我得到的数据不正确。程序显示的不是大的结果,而是小的数字,比如:2的总和=100。不可能,因为最后一个数字乘以2是98 public class Array { public static void main(String[] args){ multipleNums(); } static void multipleNums(){ int i = 0; int multTwo = 0;

当我试图计算多个数字的总和时,我得到的数据不正确。程序显示的不是大的结果,而是小的数字,比如:2的总和=100。不可能,因为最后一个数字乘以2是98

    public class Array {
    public static void main(String[] args){
        multipleNums();
    }

    static void multipleNums(){
        int i = 0;
        int multTwo = 0;
        int multThree = 0;
        int multFive = 0;
        int multSeven = 0;

        int summTwo = 0;
        int summThree = 0;
        int summFive = 0;
        int summSeven = 0;

        for(i = 0; i <= 100; i++){
        if(i == 0){    
            System.out.println("0 multiple 0");
        }else if(i%2 == 0){
            System.out.println(i + " multiple 2");
            summTwo = i + multTwo;

        }else if(i%3 == 0){
            System.out.println(i + " multiple 3");
            summThree = i + multThree;

        }else if(i%5 == 0){
            System.out.println(i + " multiple 5");
            summFive = i + multFive;

        }else if(i%7 == 0){
            System.out.println(i + " multiple 7");
            summSeven = i + multSeven;
        } else {
            System.out.println(i);
        }
        }
        System.out.println();
        System.out.println("SUMM OF 2 " + summTwo);
        System.out.println("SUMM OF 3 " + summThree);
        System.out.println("SUMM OF 5 " + summFive);
        System.out.println("SUMM OF 7 " + summSeven);
    }
}
公共类数组{
公共静态void main(字符串[]args){
多重枚举();
}
静态void multipleNums(){
int i=0;
int multTwo=0;
int multThree=0;
int multFive=0;
int multSeven=0;
int-summTwo=0;
int-summetree=0;
int-summeve=0;
int-summaseven=0;

对于(i=0;i您总是添加
multTwo
multtree
0
。您应该将代码更改为使用
sumXY+=i
更改行
summTwo=i+multTwo;


summTwo+=i;


对其他变量执行此操作,3,5,7..

im您使用的解决此问题的最佳工具是调试器。您认为
mult*
变量的用途是什么?如果数字可以被多个数字整除怎么办?不确定
mult*
变量的用途是什么(它们仍然是0)但是,为了求和,使用Sea2++i,而不是Seop2= i;我需要得到这样的结果:2+4+6+8+10+…+98这是某种FiZZuz问题。考虑i=6时,它首先检查它是否可被2除除,条件将变为真,然后它会跳到检查7。但是它也可以被3除除,而Mult3也应该增加1。如果您熟悉js arrow语法,请查看此实现。它只是一组三元条件。