介绍
在这个实验中,你将学习如何在 Java 中检查一个数是否能被另一个数整除。我们将探讨使用取模运算符 (%) 来判断整除性,方法是检查除法运算的余数是否为零。
你将练习对不同的数字和除数使用取模运算符,还将学习如何处理除以零的特殊情况,以防止 Java 程序出现错误。
使用取模运算检查整除性
在这一步中,我们将探讨如何在 Java 中使用取模运算符 (%) 来检查整除性。取模运算符会返回除法运算的余数。如果除法的余数为 0,则表示该数能被除数整除。
让我们创建一个新的 Java 程序来演示这一点。
在左侧的文件资源管理器中打开
~/project目录。在
~/project目录的空白处右键单击,然后选择“新建文件”。将新文件命名为
DivisibilityCheck.java。在代码编辑器中打开
DivisibilityCheck.java文件。将以下代码复制并粘贴到编辑器中:
public class DivisibilityCheck { public static void main(String[] args) { int number = 10; int divisor = 2; // Use the modulo operator to check for divisibility if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 11; divisor = 3; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } } }让我们来看看新的部分:
int number = 10;:这行代码声明了一个名为number的整数变量,并将其赋值为 10。int divisor = 2;:这行代码声明了一个名为divisor的整数变量,并将其赋值为 2。number % divisor:这是取模运算。它计算number除以divisor的余数。if (number % divisor == 0):这是一个if语句。它检查取模运算的结果是否等于 0。如果是,则执行if块内的代码。else:如果if语句中的条件为假(余数不为 0),则执行else块内的代码。
保存文件(Ctrl+S 或 Cmd+S)。
打开 WebIDE 底部的终端。确保你位于
~/project目录中。如果不是,请输入cd ~/project并按回车键。输入以下命令并按回车键来编译 Java 程序:
javac DivisibilityCheck.java如果没有错误,你将看不到任何输出。
~/project目录中会创建一个DivisibilityCheck.class文件。输入以下命令并按回车键来运行编译后的 Java 程序:
java DivisibilityCheck你应该会看到以下输出:
10 is divisible by 2 11 is not divisible by 3
这个输出证实了我们的程序正确地使用了取模运算符来检查整除性。
使用不同除数进行测试
在上一步中,我们检查了 10 是否能被 2 整除,以及 11 是否能被 3 整除。现在,让我们修改程序,使用不同的数字和除数进行测试,看看取模运算符的表现。
如果
DivisibilityCheck.java文件尚未在 WebIDE 编辑器中打开,请打开它。让我们在
main方法中添加更多示例。在main方法的结束花括号}之前添加以下代码行:System.out.println("\nTesting with different numbers:"); number = 15; divisor = 5; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 20; divisor = 7; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 100; divisor = 10; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); }我们添加了三个新的检查,使用了不同的
number和divisor值。System.out.println("\nTesting with different numbers:");这行代码只是添加了一个空行和一个标题,以使输出更清晰。保存修改后的
DivisibilityCheck.java文件(Ctrl+S 或 Cmd+S)。打开终端,确保你位于
~/project目录中。编译更新后的 Java 程序:
javac DivisibilityCheck.java同样,如果编译成功,你将看不到任何输出。
运行编译后的程序,查看新测试用例的结果:
java DivisibilityCheck你现在应该会看到上一步的输出,后面跟着新测试用例的输出:
10 is divisible by 2 11 is not divisible by 3 Testing with different numbers: 15 is divisible by 5 20 is not divisible by 7 100 is divisible by 10
通过添加这些测试用例,你可以看到取模运算符如何正确识别一个数是否能被另一个数整除。这是许多编程任务中使用的基本概念,例如检查数字是偶数还是奇数,或者按固定间隔执行操作。
处理除零错误
在数学中,除以零是未定义的。在编程里,尝试除以零(或以零作为除数进行取模运算)通常会导致错误。在代码中处理这种情况很重要,以防止程序崩溃。
让我们修改 DivisibilityCheck.java 程序,加入对除以零情况的检查。
在 WebIDE 编辑器中打开
DivisibilityCheck.java文件。我们将添加一个除数为 0 的新测试用例。在
main方法的结束花括号}之前添加以下代码:System.out.println("\nTesting division by zero:"); number = 10; divisor = 0; if (divisor == 0) { System.out.println("Error: Division by zero is not allowed."); } else if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); }以下是我们添加的内容:
if (divisor == 0):这是一个新的if语句,用于检查divisor变量是否等于 0。System.out.println("Error: Division by zero is not allowed.");:如果除数为 0,这行代码会打印一条错误消息。else if (number % divisor == 0):这是一个else if语句。只有当第一个if条件(divisor == 0)为假时,才会检查此语句。在这里,我们进行取模检查,但前提是除数不为零。
保存修改后的
DivisibilityCheck.java文件。打开终端,确保你位于
~/project目录中。编译更新后的 Java 程序:
javac DivisibilityCheck.java运行编译后的程序:
java DivisibilityCheck你应该会看到之前步骤的输出,接着是除以零测试用例的输出:
10 is divisible by 2 11 is not divisible by 3 Testing with different numbers: 15 is divisible by 5 20 is not divisible by 7 100 is divisible by 10 Testing division by zero: Error: Division by zero is not allowed.
通过添加 if (divisor == 0) 检查,我们让程序更加健壮,避免了除数为零时可能出现的错误。这是编写可靠代码的一个重要方面。
总结
在这个实验中,我们学习了如何在 Java 中使用取模运算符 (%) 来检查一个数是否能被另一个数整除。我们创建了一个 Java 程序 DivisibilityCheck.java,并使用 if 语句来检查除法的余数 (number % divisor) 是否等于 0。如果余数为 0,则该数能被除数整除。我们通过数能被整除和不能被整除的示例展示了这一点。



