用户必须输入x,y和限制。程序必须找到低于用户自己设置限制的这些数字的倍数。该程序将所有倍数相加并在最后打印该数字,而不是所有倍数。出于某种原因,它只是不适合我,我无法弄明白。
import java.util.Scanner;
public class SumMultiples.java {
public static void main (String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter x value: ");
int x = scanner.nextInt();
System.out.print("Enter y value: ");
int y = scanner.nextInt();
System.out.print("Enter limit value: ");
int limit = scanner.nextInt()
int sum = 0;
for (int i = 0; i < limit; i++) {
if (((i % x) == 0 || ((i % y) == 0))) {
sum += i;
}
}
}
System.out.println(sum);
}
答案 0 :(得分:1)
从将代码复制到Eclipse中:
首先,当您获得;
的输入时,您错过limit
。
其次,您的System.out.println(sum);
不在main
方法之内,应该在方法的最后,即在for
循环之后。
第三,您已将您的班级命名为SumMultiples.java
。这不是有效名称,请将其重命名为SumMultiples
。
您应该收到编译错误,IDE应该帮助您解决这个问题。如果您没有使用IDE,请这样做,因为它可以帮助您调试这些问题并帮助您熟悉Java。