怎么用JAVA编写这个程序 寻找并输出11-999之间的数,满足m、m^2、m^3均为回文数。(用除10取余的方法)

请用到下面的方法
boolean symm(long n)
{ long i,m;
i=n;m=0;
while(i!=0)
{ m=m*10+i%10;
i=i/10;
}
reyurn(m==n);
}

第1个回答  2013-05-09
List<Integer> list = new ArrayList<Integer>();
        for (int i = 11; i < 1000; i++)
        {
               
            if (symm(i) && symm((long)(Math.pow(i, 2))) && symm((long)(Math.pow(i, 3))))
            {
                list.add(i);
            }
        }
           
        //那个list里面就是找到的数值
        System.out.println(list.toString());

第2个回答  2013-05-09
for(int m =11 ;m<999;m++){
symm(m);//你上面代码最后一句应该是return什么东西把
//满足条件就输出该数
if(满足条件){
System...........//输出
}
}追问

能再完整一点吗

第3个回答  2013-05-09
for (int i = 11; i < 1000; i++)
{
if (symm(i) && symm(Math.pow(i, 2)) && symm(Math.pow(i, 3)))
{
System.out.println(i);
}
}

第4个回答  2013-05-09
for(int m =11 ;m<999;m++){
if(m*m*m<999){
boolean flag = symm(m)&&symm(m*m)&&symm(m*m*m) ;

if(flag){
System.out.println(m);

}

}

}追问

能否给我一个完整的程序。

追答

以上语句写在main方法里面,将你的方法定义为一个static 的 boolean symm(long n),就行了 ,很完整了

本回答被提问者采纳
相似回答