概述
1.素数:素数又叫质数。素数,指的是“大于1的整数中,只能被1和这个数本身整除的数。
2.回文数:回文数"是一种数字。如:98789, 这个数字正读是98789,倒读也是98789,正读倒读一样,所以这个数字就是回文数。
思路与方法
1.引入两个boolean类型的方法(need1,need2),一个用于判断回文数另一个用于判断素数。当两个boolean类型的方法同时满足时输出这个数。
if(Need1(num)&&Need2(num))
System.out.printf("%7d ",num);
2.方法的描述:
(1)回文
public static boolean Need1(int huiwen){
int y=0;
int h=huiwen;
while(huiwen>0){
y=y*10+huiwen%10;
huiwen=huiwen/10;
}
return (y==h);
}
(2)素数
public static boolean Need2(int su){
int j;
for(j=2;j<=100000000;j++){
if(su%j==0){
break;}
if(j==su-1){
break;}
}
return (j==su-1||su==2);
}
3.格式输出
package javaapplication42;
import java.util.Scanner;
public class JavaApplication42 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入最小值:");
int min=input.nextInt();
System.out.print("请输入最大值:");
int max=input.nextInt();
for(int i=1;i<=100;min++){
if(Need1(min)&&Need2(min)){
System.out.printf("%7d ",min);
i++;}
if((Need1(min)&&Need2(min))&&i%10==1){
System.out.printf("\n");}
if(min==max)
break;
}
}
public static boolean Need1(int huiwen){
int y=0;
int h=huiwen;
while(huiwen>0){
y=y*10+huiwen%10;
huiwen=huiwen/10;
}
return (y==h);
}
public static boolean Need2(int su){
int j;
for(j=2;j<=100000000;j++){
if(su%j==0){
break;}
if(j==su-1){
break;}
}
return (j==su-1||su==2);
}
}
结果