我正在尝试计算两个用户输入的数字之间的奇数之和。
这是我到目前为止的代码:
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("#1: ");
int num1 = s.nextInt();
System.out.print("#2: ");
int num2 = s.nextInt();
int sum = 0;
for (int i = num1; i <= num2; i += 2) {
sum = sum + i;
}
System.out.print(sum);
}
}
当我输入3和11时,它输出35,这是正确的。
但是,对于4和20,它输出108,这是不正确的。应该是96。
代码在哪里出错?
最佳答案
您需要检查第一个数字是偶数还是奇数,因为如果是偶数,它将对偶数而不是奇数求和,因为您需要在每次迭代后将“ i”加2。尝试在for循环之前添加以下行。
if(num1%2==0){num1++);
关于java - 计算两个用户输入之间的奇数和,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59001141/