[英]Java - Testing an integer number if it is divisible by 3?
Here is my code:这是我的代码:
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;
}
}
}
}
}
I could not find what was wrong with it as if the input was any number that was indivisible by 3, it works.我找不到它有什么问题,就好像输入是任何不能被 3 整除的数字一样,它有效。
But for any number that is divisible by 3, it prints (the number inputted) lines of output.但是对于任何可被 3 整除的数字,它会打印(输入的数字)行输出。
Output:输出:
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:
You need to remove your for loop:您需要删除 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;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.