python编写程序,输出前n(n≤100)个回文素数,每行显示5个,并适当对齐。回文素数是这样一种素数:本身为素数且也是回文数。例如,131是素数,也是回文数。 定义函数:def isPrime(n),判断n是否是素数,如果是素数,返回True,否则返回False。 定义函数:def isPalindrome(n),判断n是否是回文数,如果n是回文数,返回True,否则返回False。 编写一个main函数,输入一个正整数n,调用isPrime和isPalindrome函数,输出前n个回文素数。 【输入】 一行中给出一个正整数n。 【输出】 输出前n个回文素数,每行显示5个,每个宽度为6。
时间: 2023-11-29 16:05:25 浏览: 122
回文素数.py
以下是实现该程序的Python代码:
```python
def isPrime(n):
if n < 2: # 小于2的数都不是素数
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def isPalindrome(n):
s = str(n)
return s == s[::-1] # 反转字符串后判断是否相等
def main():
n = int(input())
count = 0 # 计数器,记录已输出的回文素数个数
i = 2 # 从2开始找回文素数
while count < n:
if isPrime(i) and isPalindrome(i):
print("{:6d}".format(i), end='') # 对齐输出
count += 1 # 计数器加1
if count % 5 == 0: # 每行输出5个,换行
print()
i += 1
if __name__ == '__main__':
main()
```
输入示例:
```
10
```
输出示例:
```
2 3 5 7 11
101 131 151 181 191
```
阅读全文