6. 编写程序,输出前n(n≤100)个回文素数,每行显示5个,并适当对齐。回文素数是这样一种素数:本身为素数且也是回文数。例如,131是素数,也是回文数。 定义函数:def is_prime(n),判断n是否是素数,如果是素数,返回True,否则返回False。
时间: 2024-02-18 17:02:47 浏览: 115
以下是Python代码实现:
```python
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5)+1):
if n % i == 0:
return False
return True
def is_palindrome(n):
return str(n) == str(n)[::-1]
n = int(input("请输入n的值(n≤100):"))
count = 0
i = 2
while count < n:
if is_prime(i) and is_palindrome(i):
print("{:>8d}".format(i), end="")
count += 1
if count % 5 == 0:
print()
i += 1
```
运行结果:
```
请输入n的值(n≤100):20
2 3 5 7 11
101 131 151 181 191
313 353 373 383 727
757 787 797 919 929
```
该程序使用了两个函数,is_prime(n)用于判断n是否是素数,is_palindrome(n)用于判断n是否是回文数。在主程序中,使用一个while循环不断判断数字i是否既是素数又是回文数,直到找到前n个回文素数。每输出5个数字,就换行并适当对齐。注意,在输出数字时,使用了字符串的格式化功能,使得数字对齐显示。
阅读全文