请各位帮我编写程序用JAVA: 题目:从键盘输入一个数,判断该数是不是完 ...
发布网友
发布时间:2024-10-23 17:01
我来回答
共1个回答
热心网友
时间:2024-11-14 17:13
代码如下,希望能帮到你~!
import java.util.Scanner;
public class PerfectNumber {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
String str;
long num;
System.out.println("请输入一个整数,输入end退出程序。");
while (true) {
str = in.nextLine();
if (str.equals("end"))
break;
try {
num = Long.parseLong(str);
} catch (Exception e) {
System.out.println("输入错误,请重新输入!");
continue;
}
System.out.println(num + (perfectNum(num) ? "是完全数" : "不是完全数"));
}
}
/**
* 判断一个数是否是完全数的方法
*
* @param num
* @return
*/
public static boolean perfectNum(long num) {
int sum = 0;
for (int i = 1; i <= num / 2; i++) {
if (num % i == 0) {
sum += i;
// System.out.println(i);
}
}
return sum == num;
}
}