java吧 关注:1,248,187贴子:12,727,698
  • 2回复贴,共1

Java 编写程序打印1000以内的所有回文素数 我遇到问题了。

只看楼主收藏回复

public static void main(String[] args) {
int i;
int m,n;
for(i=100;i<=1000;i++)
{
if(i%2!=0){
m=i/100;
n=i/10;
if(m==n)
{
System.out.println(i);
}
}
}
这个为什么错啊。我看了 是不是
m=i/100;
n=i/10;
这个有问题。怎么改改 。


IP属地:浙江1楼2017-03-24 10:54回复
    //Java 编写程序打印1000以内的所有回文素数
    public static void main(String[] args) {
    System.out.println("1000以内的所有回文素数:");
    for(int i=10;i<1000;i++){
    //回文数 判断一个数是不是回文数,回文数就是原数与其倒置后的数相等
    if(i<100){
    //素数
    if(isp(i)){
    int m=i/10;
    int n=i%10;
    if(i==n*10+m){
    System.out.print(i+"\t");
    }
    }
    }
    if(100<=i&&i<1000){
    //素数
    if(isp(i)){
    int m=i/100;
    int p=(i/10)%10;
    int n=i%10;
    if(i==n*100+p*10+m){
    System.out.print(i+"\t");
    }
    }
    }
    }
    }
    //素数
    public static boolean isp(int num){
    boolean flag=true;
    for(int i=2;i<num;i++){
    if(num%i==0){
    flag=false;
    }
    }
    return flag;
    }


    2楼2017-03-24 12:39
    收起回复