新对称素数问题

需要解决的问题

  • Python中的连续输入
  • C语言中常用while(scanf(“%d”,x) !=EOF)判断输入是否碰到文件结束符(EOF)

两种方法可实现对文件结束符(EOF)的判断

Python实现方式一

1
2
3
4
5
import sys 
for line in sys.stdin:
a=int(line)
if a!=0:
print(a)

Python实现方式二

1
2
3
4
5
try:
while True:
s = input()
except EOFError:
exit(0)

题目描述

提交代码

前几次提交就是没有考虑到连续输入的问题,加上上述的实现方式之后,就可以解决该问题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
def prime(num):
if num < 2:
return False
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
return False
return True


def huiwen(num):
num = str(num)
if num == num[::-1]:
return True
else:
return False


def check(num):
if num <= 99999:
return True
else:
return False


if __name__ == '__main__':
# n = int(input())
try:
while True:
nums = [int(x) for x in input().split(' ')]

# print(nums)
for i in nums:
if huiwen(i) and prime(i) and check(i):
print('Yes')
else:
print('No')
except EOFError:
exit(0)