第一种:利用数字的规律去判断素数,然后再用for循环搭配if语句,完成.
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个大于的1的自然数");
long number = scanner.nextInt();
long figure = 9L;
if (number % 2 != 0 && number % 3 != 0 && number % 5 != 0 && number % 7 != 0) { //判断这个数是否为素数
for (int i = 1; i <= Integer.MAX_VALUE; i++) { //java里面最大的一个数
if (figure % number == 0) {
System.out.println(figure);
break;
} else {
figure = figure*10+9; //让9变为99,999以此类推,然后去除那个素数,直到除尽.
}
}
} else {
System.out.println("该数字不为素数,请输入一个素数");
}
}
第二种:利用for循环判断素数,之后的步骤与上面一样.
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个大于1的自然数");
long number = scanner.nextInt();
long figure = 9L;
for (int i = 2; i <= number; i++) {
if (i == number) {
for (int j = 1; j <= Integer.MAX_VALUE; j++) {
if (figure % number == 0) {
System.out.println(figure);
break;
} else {
figure = figure * 10 + 9;
}
}
break;
}
if (number % i == 0) {
System.out.println("这个数不为素数");
}
}
}