题目:编写程序找出1-999之内的可逆素数(可逆素数是指一个素数的各位数值顺序颠倒后得到的素仍为素数,如113,311)。
思路:
可分为两步,第一步判断是否为素数,第二部判断它的反序数是否为素数。
判断素数:
private static boolean Sushu(int i) {
boolean Sushu=true;
if(i==1||i==2){
return true;
}
for(int j=2;j<Math.sqrt(i);j++){
if(i%j==0){
return false;
}
}
if(Sushu==true){
return true;
}else
return false;
}
反序数:
private static int Fan(int i) {
int len = getBitCount(i); //getBitCount(i)求i的长度
int s=0;
for(int j=1;j<len+1;j++){
//getBit(i,j)求数i的第j位上