7-2 判断是否完全数java
时间: 2024-05-11 10:14:57 浏览: 9
完全数的定义:一个数如果恰好等于它的因子(不包括它本身)之和,那么这个数就是完全数。
以下是判断一个数是否为完全数的 Java 代码:
```java
public static boolean isPerfectNumber(int num) {
int sum = 0;
for (int i = 1; i < num; i++) {
if (num % i == 0) {
sum += i;
}
}
return sum == num;
}
```
使用以上代码可以判断一个数是否为完全数,如果是完全数则返回 `true`,否则返回 `false`。
相关问题
完全平方数判断用java实现
完全平方数是指一个数能够写成一个整数的平方的形式,例如1、4、9、16、25等都是完全平方数。判断一个数是否为完全平方数,可以使用以下代码实现:
```java
public class Main {
public static boolean isPerfectSquare(int num) {
if (num < 0) {
return false;
}
int i = 0;
while (i * i <= num) {
if (i * i == num) {
return true;
}
i++;
}
return false;
}
public static void main(String[] args) {
int num = 16;
if (isPerfectSquare(num)) {
System.out.println(num + "是完全平方数");
} else {
System.out.println(num + "不是完全平方数");
}
}
}
```
在上面的代码中,isPerfectSquare()方法判断一个数是否为完全平方数,如果是则返回true,否则返回false。该方法使用了一个while循环,从0开始遍历每个整数,判断其平方是否等于给定数,如果相等则说明该数为完全平方数。如果遍历完所有整数都没有找到完全平方数,则说明该数不是完全平方数。在主函数中,我们可以调用isPerfectSquare()方法判断一个数是否为完全平方数。
怎么用JAVA 判断一个数是超完全数字不变数
一个超完全数字不变数是指一个数字在乘以2、3、4、5、6后,每个数字都可以通过重排得到原始数字。例如,142857是一个超完全数字不变数,因为:
142857 * 2 = 285714
142857 * 3 = 428571
142857 * 4 = 571428
142857 * 5 = 714285
142857 * 6 = 857142
要判断一个数是否是超完全数字不变数,可以使用以下JAVA代码:
public static boolean isSuperPermutation(int n) {
String s = String.valueOf(n);
for (int i = 2; i <= 6; i++) {
String s2 = String.valueOf(n * i);
if (s2.length() != s.length()) {
return false;
}
boolean found = false;
for (int j = 0; j < s.length(); j++) {
if (s2.indexOf(s.charAt(j)) >= 0) {
found = true;
} else {
found = false;
break;
}
}
if (!found) {
return false;
}
}
return true;
}
该方法接受一个整数作为参数,如果该数字是超完全数字不变数,则返回true,否则返回false。该方法首先将该数字转换为字符串,并使用一个循环来检查该数字乘以2、3、4、5、6后的结果是否可以通过重排得到原始数字。如果其中任何一个结果不能得到原始数字,则返回false。如果所有结果都可以得到原始数字,则返回true。