Java 当循环条件为';应该是的
我正在做一项作业,将两个用户输入之间的所有偶数相加。例子;userNum1=3,userNum2=12。这两个数字也包括在加法中(只有偶数时)。 我已经检查了一个小时的while循环条件,似乎不明白为什么当添加的数字是用户的第二个数字(在本例中为12)时,它没有停止 这是我的密码Java 当循环条件为';应该是的,java,loops,while-loop,conditional-statements,Java,Loops,While Loop,Conditional Statements,我正在做一项作业,将两个用户输入之间的所有偶数相加。例子;userNum1=3,userNum2=12。这两个数字也包括在加法中(只有偶数时)。 我已经检查了一个小时的while循环条件,似乎不明白为什么当添加的数字是用户的第二个数字(在本例中为12)时,它没有停止 这是我的密码 int evenCount = 0; int evenSum = 0; int oddNumberFixer = 0; int evenAddNumber = 0; while (evenAddNumber <
int evenCount = 0;
int evenSum = 0;
int oddNumberFixer = 0;
int evenAddNumber = 0;
while (evenAddNumber <= num2 || evenCount < num2)
{
oddNumberFixer = num1 + 1;
if ((num1 % 2) != 0)
{
evenAddNumber = oddNumberFixer + evenCount;
evenSum = evenAddNumber + evenSum;
evenCount = evenCount + 2;
}
else
{
evenAddNumber = num1 + evenCount;
evenSum = evenAddNumber + evenSum;
evenCount = evenCount + 2;
}
}
System.out.println("The sum of the included evens is " + evenSum);
int evenCount=0;
int evenSum=0;
int oddNumberFixer=0;
int evenAddNumber=0;
虽然(evenAddNumber你需要考虑你的算法需要做什么。请注意,无论你的数字是否为偶数,你都在增加evenSum。此外,你只需要检查一次数字是否为偶数。这可能看起来很明显,但一旦你知道一个数字是偶数,加2总是会得到另一个偶数。该算法可能会简单得多在开始编写代码之前,您花了更多的时间来考虑它
在开始循环之前,您可以尝试确保数字为偶数。然后您可以尝试
for(int i = yourEvenNumber; i <= num2; i+=2) {
//add them up here
}
for(int i=yourEvenNumber;i我不确定为什么要使用while循环,这似乎是for循环类型的应用程序。如果进行了一些初始化,确保第一个数字是要添加的第一个偶数,则可以一次通过2,即:
int first = num1;
if(first % 2 == 1)
first++;
for(int i = first; i <= num2; i += 2)
{
//summing code
}
int first=num1;
如果(第一个%2==1)
第一++;
对于(inti=first;我不只是盯着代码看,而是使用调试器逐行检查代码。这将允许您在执行过程中检查变量的值。