Java 程序:显示一个数字的因子
要理解这个示例,你应该具备以下 Java 编程 主题的知识:
示例 1:正整数的因数
public class Main {
public static void main(String[] args) {
// 正数
int number = 60;
System.out.print(number + " 的因数有: ");
// 循环从 1 到 60
for (int i = 1; i <= number; ++i) {
// 如果数字可以被 i 整除
// i 就是因数
if (number % i == 0) {
System.out.print(i + " ");
}
}
}
}
输出
60 的因数有: 1 2 3 4 5 6 10 12 15 20 30 60
在上面的程序中,要找因数的数字存储在变量 number
(60)中。
for
循环迭代直到 i <= number
不成立。在每次迭代中,都会检查 number
是否能被 i
完全整除(i
是 number
的因数的条件),然后 i
的值增加 1。
示例 2:负数的因数
class Main {
public static void main(String[] args) {
// 负数
int number = -60;
System.out.print(number + " 的因数有: ");
// 循环从 -60 到 60
for(int i = number; i <= Math.abs(number); ++i) {
// 跳过 i = 0 的迭代
if(i == 0) {
continue;
}
else {
if (number % i == 0) {
System.out.print(i + " ");
}
}
}
}
}
输出
-60 的因数有: -60 -30 -20 -15 -12 -10 -6 -5 -4 -3 -2 -1 1 2 3 4 5 6 10 12 15 20 30 60
在上面的例子中,我们计算了一个负数的所有因数。这里,for
循环从 -60 到 60。
当 i
的值是 0 时,会跳过该次迭代。否则,会出现异常。
注意:Math.abs()
方法返回数字的绝对值。