import java.util.Scanner;
public class Test {
public static void main(String args[]) {
System.out.print("输入正整数: ");
Scanner scan0 = new Scanner(System.in);
int n = scan0.nextInt();
// 检测素数
int flag = checkPrimeNumber(n);
if (flag == 1)
System.out.print(n + " 是素数。");
else
System.out.println(n + " 不是素数");
// 检测 Armstrong 数
flag = checkArmstrongNumber(n);
if (flag == 1)
System.out.print(n + " 是 Armstrong 数。");
else
System.out.print(n + " 不是 Armstrong 数。");
return;
}
//判断素数
public static int checkPrimeNumber(int n) {
int i, flag = 1;
for (i = 2; i <= n / 2; ++i) {
if (n % i == 0) {
flag = 0;
break;
}
}
return flag;
}
public static int checkArmstrongNumber(int number) {
int originalNumber, remainder, result = 0, n = 0, flag;
originalNumber = number;
while (originalNumber != 0) {
originalNumber /= 10;
++n;
}
originalNumber = number;
while (originalNumber != 0) {
remainder = originalNumber % 10;
result += Math.pow(remainder, n);
originalNumber /= 10;
}
if (result == number)
flag = 1;
else
flag = 0;
return flag;
}
}
「Java学习打卡」23、判断素数和Armstrong数
猜你喜欢
转载自blog.csdn.net/qq_26959737/article/details/104955627
今日推荐
周排行