Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 求a和b(含)之间所有奇数的总和,其中a和b都是用户输入。我的set_1工作,但set_2不工作';为什么?_Java_If Statement_Conditional Statements_Java.util.scanner_Counter - Fatal编程技术网

Java 求a和b(含)之间所有奇数的总和,其中a和b都是用户输入。我的set_1工作,但set_2不工作';为什么?

Java 求a和b(含)之间所有奇数的总和,其中a和b都是用户输入。我的set_1工作,但set_2不工作';为什么?,java,if-statement,conditional-statements,java.util.scanner,counter,Java,If Statement,Conditional Statements,Java.util.scanner,Counter,注意:两套扫描仪均已导入 在主要方法中: 代码集_1的开始 Scanner input = new Scanner(System.in); //scanner for user input System.out.print("Enter number, a: "); //prompt for user to enter number for variable, a int numA = input.nextInt(); //variable for 1

注意:两套扫描仪均已导入

在主要方法中:

代码集_1的开始

    Scanner input = new Scanner(System.in); //scanner for user input
    System.out.print("Enter number, a: "); //prompt for user to enter number for variable, a
    int numA = input.nextInt(); //variable for 1st number, a
    int a = numA; //variable created to track 1st number entered - will be used to print later

    System.out.print("Enter number, b: "); //prompt for user to enter number for variable, b
    int numB = input.nextInt(); //variable for 2nd number, b


    int oddSum = 0; //variable to hold calculation of total odd sum
    //to loop between two numbers
    while (numA <= numB){
        //> 1 for odd #s to enter conditional
        if ((numA % 2) > 0){
            oddSum += numA; //variable, oddSum will store all added numbers between the 2 entered #s
        }
        numA++; //numA is counted +1
    }
    System.out.println("The sum of all odd numbers between " + a + " and " + numB + " is " + oddSum);
扫描仪输入=新扫描仪(System.in)//用户输入扫描仪
系统输出打印(“输入数字,a:”)//提示用户输入变量a的编号
int numA=input.nextInt()//第一个数字的变量,a
int a=numA//为跟踪输入的第一个编号而创建的变量-将用于以后打印
系统输出打印(“输入编号,b:”)//提示用户输入变量b的编号
int numB=input.nextInt()//第二个数字的变量,b
int oddSum=0//保存总奇数和计算的变量
//在两个数字之间循环
while(numA 1表示奇数输入条件
如果((numA%2)>0){
oddSum+=numA;//变量,oddSum将存储输入的2个#之间所有添加的数字
}
numA++;//numA计数为+1
}
System.out.println(“介于“+a+”和“+numB+”之间的所有奇数之和为“+oddSum”);
…代码集结尾\u 1==>这100%有效

代码集_2的开始

    Scanner input = new Scanner(System.in); //scanner for user input
    System.out.print("Enter number, a: "); //prompt for user to enter number for variable, a
    int numA = input.nextInt(); //variable for 1st number, a                             
    System.out.print("Enter number, b: "); //prompt for user to enter number for variable, b
    int numB = input.nextInt(); //variable for 2nd number, b


    int oddSum = 0; //variable to hold calculation of total odd sum
    int numerBetweenAandB = numA; //variable created to track 1st # entered and count up
    //to loop between two numbers
    while (numA <= numB){
        //> 1 for odd #s to enter conditional
        if ((numA % 2) > 0){
            oddSum += numberBetweenAandB; //variable, will store all added numbers between the 2 #s
        }
        numberBetweenAandB++; // counted +1
    }
    System.out.println("The sum of all odd numbers between " + numA + " and " + numB + " is " + oddSum);
Scanner input=新扫描仪(System.in);//用于用户输入的扫描仪
System.out.print(“输入数字,a:”;//提示用户输入变量a的数字
int numA=input.nextInt();//第一个数字的变量,a
System.out.print(“输入数字,b:”;//提示用户输入变量b的数字
int numB=input.nextInt();//第二个数字b的变量
int oddSum=0;//用于保存奇数和总和计算的变量
int numberbetweenaandb=numA;//为跟踪第一个而创建的变量#已输入并计数
//在两个数字之间循环
while(numA 1表示奇数输入条件
如果((numA%2)>0){
oddSum+=numberbetween aAndB;//变量,将存储2#s之间添加的所有数字
}
编号介于A和B++;//计数+1
}
System.out.println(“介于“+numA+”和“+numB+”之间的所有奇数之和为“+oddSum”);
…代码集结尾_2==>这将进入一个无限循环。为什么

我的逻辑出了什么问题?据我所知,第一个数字存储在a和b之间的NumberB中,它使用++计数器上升,直到循环结束,时间变量oddSum将a和b之间的所有#相加


感谢您为此花费的时间和精力。我仍在学习。

在您的代码中,您有:

while (numA <= numB){
  // a bunch of code; and none of it changes numA or numB
}

while(你的
while中的numA)(numA谢谢。感谢你的澄清。我现在看到的非常明显。谢谢。感谢你的澄清。我现在看到的非常明显。