python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python求2-1000内的所有回文素数

python如何求2-1000内的所有回文素数

作者:Littleluck_♡

这篇文章主要介绍了python如何求2-1000内的所有回文素数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

求2-1000内的所有回文素数

只能由1和他本身整除的整数叫做素数,若一个素数从左向右或者从右向左读的是相同的数,则该素数为回文素数。

python代码:

flag=None
n=10
i=2
while n < 1000:
    while i < n:   #判断是否为素数
        flag=1
        if n%i == 0:
            flag=0
            break
        i += 1
    if flag == 1:    #判断它是否为回文素数
        if n // 100 == 0:   #判断是否为两位数
            if n // 10 == n%10:   #判断个位和十位是否相同
                print(n)
        elif n // 100 == n%10:
                print(n)
    n += 1

Python寻找回文素数

描述

如果一个整数是素数,同时其对应的字符串是回文字符串时,便称其为回文素数。

例如,131既是素数,其对应的字符串“131”又是回文字符串,所以131是回文素数。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

输入一个正整数 n , 请你在一行内输出从小到大排列的小于这个数的所有回文素数,每个数字后面一个空格。

输入格式

输入一个正整数

输出格式

一行内输出从小到大排列的小于这个数的所有回文素数,每个数字后面一个空格。

示例:

输入:191

输出:2 3 5 7 11 101 131 151 181

def is_prime(n):
    if n<2:
        return False
    for i in range(2,int(n**0.5)+1):
        if n%i==0:
            return False
    else:
        return True
def plalindrome_prime(number):
    for i in range(number):
        if str(i)==str(i)[::-1]and is_prime(i):
            print(i,end=' ')
positive_int = int(input())
plalindrome_prime(positive_int)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文