怎么用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),就行了 ,很完整了

本回答被提问者采纳

用java编程,寻找并输出11~999之间的数m,它满足m、m的平方、m的立方均...
public class Cat { public static void main(String[] args) { for(int i = 11; i <= 999; i++){ int square = (int) Math.pow(i, 2);int cube = (int)Math.pow(i, 3);if(isPlalindrome(i) && isPlalindrome(square) && isPlalindrome(cube)){ System.out.print(i + ",...

寻找并输出11~999之间的数m,它满足m、m的平方、m的立方均为回文数...
所谓回文数是指其各位数字左右对称的整数,例如121、676、94249等。满足上述条件的数如 m=11,其平方为121,其立方为1331,皆为回文数。要求编制函数 int svalue(long m)实现此功能,如果是回文数,则函数则函数返回1,反之则返回0。在主函数中将三重回文数输... 展开 mx...

关于回文问题:寻找并输出11至999之间的数m,它满足m,m2和m3均为回文数...
由于while语句里有k\/=10,所以每次循环,k会被削掉一个数量级,如k=12345,运行后k=1234,k=123,k=12,k=1,k=0;当k=0时,while(k)由于条件k=0,循环结束。你的函数jsValue()返回类型是int,所以return 1,就是返回一个数值1到调用此函数的位置 ...

c语言判断回文数
#include<string.h> int JSV(long m); int main() { FILE *pf; long m=11,a,b; for(;m<1000;m++) { a=m*m; b=m*m*m; if(JSV(m)&&JSV(a)&&JSV(b)) { if((pf=fopen("DE2.txt","a"))==NULL) printf("File could not be opened.\\n"); else fprintf(pf,"%d %d %d\\n...

谁用C帮我做下这题! 谢谢了
getch();\/*如果用的是vc编译器,这个去掉*\/ } 简单点的 include <stdio.h> bool fun(int n){ int m=0,v=n;while(v>0){ m=m*10+v%10;v\/=10;} return (m==n);} void main(){ int i,count=0;for(i=11;i<=999;i++)if(fun(i)==true)count++;printf("%d\\n",count)...

一个三级题,看不懂,求助
int jsvalue(long n) \/\/形参n是要检测的数,等于m;m2或是m3的值.{ int I,strl,half; //strl是n的位数,half为一半.char xy[20]; //定义一个数组.ltoa(n,xy,10); //ltoa函数是用来把n的每一位都存放进数组.strl=strlen(xy); //这句你应该知道,就是看数组的长度.half...

求C关于回文数的解释!!
i=i*10+m%10; \/\/ 这里的意思是将原来的数值的低位高,就是原来的数值反过来 m=m\/10;如:m=121 第一次m不为0,i=0*10+1=1; m=12;第二次m不为0,i=1*10+2=12; m=1;第三次m不为0,i=12*10+1=121; m=0;第四次m为0,退出while循环!将i和n比较,相等则为回文数,...

...整数相乘形成的最大回文数是9009=99*91。编写程序,求得
再用另外一个函数寻找 返回的是(最大回文数,被乘数,乘数)所组成的元组 def isPal(s): if len(s)<=1: return True return s[0]==s[-1] and isPal(s[1:-1])def maxPal(n): maxNum, maxA, maxB = 0,0,0 for a in xrange(10**(n-1),10**n): for...

用C语言程序编辑对于一次考试成绩进行统计,考M科,有N人(如10人)参加...
int main(){ int n,m;while(scanf("%d%d",&n,&m)!=EOF){ double N[50][5],M[5]={0},R[50]={0};int i,j,p;for(i=0;i<n;i++)for(j=0;j<m;j++)scanf("%lf",&N[i][j]);for(i=0;i<n;i++){ for(j=0;j<m;j++)R[i]=R[i]+N[i][j];R[i]=(...

pascal 的初级题
4. x,y,z的值分别为1,11,111,将它们靠左边对齐输出.5. x,y,z的值分别为1,11,111,将它们靠右边对齐打印输出.6. 对于输入的方程系数,求二元一次方程组的解.7. 输入两整数,求出它们的最大公约数和最小公倍数.8. 对于输入的MAX个数字,统计其中奇,偶数的个数.9. 找出10个数中的最大和最小数字....

相似回答