题目描述:
给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输 入值小于1000。 如,输入为10,程序应该输出结果为2。(共有两对质数的和为10,分别 为(5,5),(3,7))
输入描述: 输入包括一个整数n,(3 ≤ n < 1000)
输出描述: 输出对数
示例1 :
输入:10
输出: 2
第一种:
num = int(input())
def isPrime(num):
for i in range(2,num):
if num % i == 0:
return False
else:
return True
primeli = [i for i in range(2,num) if isPrime(i)]
print(primeli)
primecount = 0
for item in primeli:
if (num - item) in primeli and item <= num - item:
primecount += 1
print(primecount)
第二种:
num = int(input("请输入一个数字:"))
def isPrime(num):
for i in range(2,num):
if num % i == 0:
return False
else:
return True
li=[i for i in range(2,num) if isPrime(i)]
print(li)
count = 0
for i in li:
if (num - i) in li and i <= num - i:
print("%d + %d : %d" %(i,num-i,num))
count += 1
print(count)