这是我的代码:
import java.util.*;
public class FindNumbers {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scnr = new Scanner (System.in);
while (true) {
System.out.print("Please enter an integer number: ");
int number = scnr.nextInt();
if (number > 100) {
System.out.println("End!");
break;
}
for (int i = 0; i < number; i++) {
if (number % 3 == 0) {
System.out.println("This number is divisible by 3!");
}
else {
System.out.println("This number is indivisible by 3!");
break;
}
}
}
}
}
我无法找到它的错误,好像输入是3不可分割的任何数字,它有效。
但对于任何可被3整除的数字,它会打印(输入的数字)输出行。
输出:
Please enter an integer number: 1
This number is indivisible by 3!
Please enter an integer number: 2
This number is indivisible by 3!
Please enter an integer number: 4
This number is indivisible by 3!
Please enter an integer number: 3
This number is divisible by 3!
This number is divisible by 3!
This number is divisible by 3!
Please enter an integer number:
答案 0 :(得分:2)
您需要删除for循环:
if (number % 3 == 0) {
System.out.println("This number is divisible by 3!");
break;
}
else {
System.out.println("This number is indivisible by 3!");
break;
}