需要一个输出回文的java程序的帮助吗

sycxhyv7  于 2021-07-12  发布在  Java
关注(0)|答案(0)|浏览(174)

关闭。这个问题需要细节或清晰。它目前不接受答案。
**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。

昨天关门了。
改进这个问题
我的任务:
编写一个java程序来生成一个所有小于1000的正回文数的数组。在这个项目中,除了main方法之外,还应该创建以下方法: [5, 55, 77, 181, 313, 434, 505, 545, 595, 636, 818] 当输入整数是回文式时,布尔方法“ispalindromic”将返回true,否则返回false。
打印回文数组元素的“display”方法。
一种方法“sumofsquares”包含两个整数输入参数i和j,并返回i和j(包括两者)之间整数的平方和。
以下是我目前的设置:

public class isPalindromic{

    public static void main(String[]args){

    int n=1000;
    System.out.println("Test for palindromes < 1000:");
    sumOfSquares((int)Math.sqrt(1000),1000);

    }

    static void sumOfSquares(int sqrtN,int N){
        long sum=0; 
        ArrayList<Integer>list=new ArrayList<>(); 
        for(int i=1;i<=sqrtN;i++){ 
            int n=i*i; 
            for(int j=i+1;j<=sqrtN;j++){ 
                n+=j*j; 
                if(n>N) break; 
                if(IsPalindrome(n)&&!list. contains(n)){ 
                    sum+=n;
                    list.add(n);
                }
            } 
        }

        Collections.sort(list);
        System.out.print("Total sum of palindromes = "+sum+"\nList of palindromes:\n"+list);
        }

    static boolean IsPalindrome(int n){ 
        int r=0,i=n; 
        while(i>0){ 
            r=10*r+i%10; 
            i/=10; 
        } 
        return n==r; 
    }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题