第六章第二十六题(回文素数)(Palindromic prime)

该程序展示了如何找出并打印前120个回文素数。回文素数是同时为素数和回文数的数字,例如131、313和757。代码中定义了检查回文和素数的方法,并通过循环找到符合条件的数,每行显示10个数,以空格分隔。
摘要由CSDN通过智能技术生成

第六章第二十六题(回文素数)(Palindromic prime)

  • **6.26(回文素数)回文素数是指一个数同时为素数和回文数。例如:131是一个素数,同时也是一个回文素数。数学313和757也是如此。编写程序,显示前100个回文素数。每行显示10个数,数字中间用一个空格隔开。如下所示:
    2 3 5 7 11 101 131 151 181 191
    313 353 373 383 727 757 787 797 919 929

    **6.26(Palindromic prime) A palindromic prime is a prime number and also palindromic. For example, 131 is a prime and also a palindromic prime, as are 313 and 757. Write a program that displays the first 120 palindromic prime numbers. Display 10 numbers per line, separated by exactly one space, as follows:
    2 3 5 7 11 101 131 151 181 191
    313 353 373 383 727 757 787 797 919 929
  • 参考代码:
package chapter06;

public class Code_26 {
    public static void main(String[] args) {
        int palindPrimeCount = 0;
        for(int i = 2;palindPrimeCount != 100;i++) {
            if(isPalindrome(i) && isPrime(i)) {
                System.out.print(i+" ");
                palindPrimeCount++;
                if(palindPrimeCount % 10 == 0)
                    System.out.print("\n");
            }
        }
    }
    public static int reverse(int number) {
        int reverseNumber = 0;
        do {
            reverseNumber = reverseNumber * 10 + number % 10;
            number /= 10;
        }while(number > 0);

        return reverseNumber;
    }
    public static boolean isPalindrome(int number) {
        return reverse(number) == number;
    }
    public static boolean isPrime(int number) {
        for(int i = 2;i <= Math.sqrt(number);i++)
            if(number % i == 0)
                return false;
        return true;
    }
}

  • 结果显示:
2 3 5 7 11 101 131 151 181 191 
313 353 373 383 727 757 787 797 919 929 
10301 10501 10601 11311 11411 12421 12721 12821 13331 13831 
13931 14341 14741 15451 15551 16061 16361 16561 16661 17471 
17971 18181 18481 19391 19891 19991 30103 30203 30403 30703 
30803 31013 31513 32323 32423 33533 34543 34843 35053 35153 
35353 35753 36263 36563 37273 37573 38083 38183 38783 39293 
70207 70507 70607 71317 71917 72227 72727 73037 73237 73637 
74047 74747 75557 76367 76667 77377 77477 77977 78487 78787 
78887 79397 79697 79997 90709 91019 93139 93239 93739 94049 

Process finished with exit code 0

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值