3.11-3.13 PAT1031 乙级 python

查验身份证

n = int(input())
quanzhong = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
m = ['1','0','X','9','8','7','6','5','4','3','2']
lst = []
for i in range(n):
	no = input()
	total = 0
	flag = 0
	for j in range(17):
		if no[j].isdigit() == False:
			flag = 1
			break
		else:
			total += int(no[j])*quanzhong[j]
	if flag == 1:
		lst.append(no)
	else:
		total = total % 11
		if m[total] != no[17]:
			lst.append(no)
if len(lst) == 0:
	print('All passed')
else:
	for i in lst:
		print(i)

猜你喜欢

转载自blog.csdn.net/qq_39782006/article/details/88539945